Try resize instead

Dim Tblrows As Long
Dim i As Long
Tblrows = 100
For i = 2 To Tblrows
    With Range("b" & i)
        If .Value = "1" Then
            .Offset(0, 1).Resize(1, 5).Copy
        End If
    End With
Next i
    Application.CutCopyMode = False
VBA Noob