Вы не должны использовать ActiveCell & .Select в идеале.Посмотрите, поможет ли это:
Sub thirdNonBlank()
Dim ws As Worksheet: Set ws = ActiveWorkbook.Sheets("sheet name")
Dim lRow As Long: lRow = ws.Cells(Rows.Count, 1).End(xlUp).Row
Dim C As Long, cnt As Long
Dim rngCellFind As Range
With ws.Range("A1:A" & lRow)
Set rngCellFind = .Find( _
What:="Hello", _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext _
).Offset(1, 0)
End With
For C = 1 To ws.Cells(rngCellFind.Row, Columns.Count).End(xlToLeft).Column
If Not IsEmpty(ws.Cells(rngCellFind.Row, C)) Then cnt = cnt + 1
If cnt = 3 Then
ws.Cells(rngCellFind.Row, C).Select 'I'd advise against using .Select
Exit For
End If
Next C
End Sub
РЕДАКТИРОВАТЬ: изменено в соответствии с новым входом OP.