Eu achei IsNumeric(B)
para ser verdadeiro para células vazias,
então eu mudei sua declaração If
de acordo. Isso funcionou para mim:
If IsNumeric(B) And B <> "" Then
Cells(B.Row, 9) = Cells(B.Row + 1, 8) & Cells(B.Row + 2, 8)
Cells(B.Row + 1, 8) = ""
Cells(B.Row + 2, 8) = ""
End If
If B.Row > 9 Then Exit For
Obviamente, 8
e 9
são os números de coluna para H
e I
, respectivamente.
Eu adicionei o
If B.Row > 9 Then Exit For
linha porque eu tive um problema com o loop não terminar; se
For Each B In ClientTable.Columns(2).Cells
funciona para você, você pode tirar o If B.Row > 9 Then Exit For
.