Public Sub hello()
Dim lr As Long, lc As Long, arr As Variant, r As Long, ub As Long, dArr As Variant
Dim c As Long, maxCount As Long, tempCount As Long, uc As Long, tempUbound As Long, curRow As Long
Application.ScreenUpdating = False
With Sheet1
lr = .UsedRange.SpecialCells(xlCellTypeLastCell).Row
lc = .UsedRange.SpecialCells(xlCellTypeLastCell).Column - 6
curRow = 4
Do While tempUbound < lr
tempUbound = tempUbound + 100000
arr = .Range("G" & curRow & ":G" & WorksheetFunction.Min(tempUbound, lr)).Resize(, lc).Value
ub = UBound(arr): uc = UBound(arr, 2)
ReDim dArr(1 To ub, 1 To 1)
For r = 1 To ub Step 1
maxCount = 0: tempCount = 0
For c = 1 To uc Step 1
If Not arr(r, c) = Empty Then
tempCount = tempCount + 1
Else
If tempCount > maxCount Then maxCount = tempCount
tempCount = 0
End If
Next
dArr(r, 1) = maxCount
Next
.Range("D" & curRow).Resize(ub).Value = dArr
curRow = curRow + ub
Loop
End With
Application.ScreenUpdating = True
End Sub