Que tal:
Sub KopyKat()
Dim K As Long, i As Long
K = 1
For i = 1 To 150
If Cells(i, 1).Value <> "" Then
Cells(i, 1).Copy Cells(K, 2)
K = K + 1
End If
Next i
End Sub
Eu apreciaria muito uma solução para o seguinte: Copie SOMENTE as linhas que NÃO estão em branco do A1: A150 para a Coluna B ou copie para outra folha de trabalho. Até metade das linhas pode ficar em branco na Coluna A.
Que tal:
Sub KopyKat()
Dim K As Long, i As Long
K = 1
For i = 1 To 150
If Cells(i, 1).Value <> "" Then
Cells(i, 1).Copy Cells(K, 2)
K = K + 1
End If
Next i
End Sub
Você também pode usar a função filter
( ctrl + deslocamento + L ).
Em seguida, crie uma regra de filtro personalizada para ocultar texts that contain (nothing or blank)
Aplique o filtro e copie e cole os dados filtrados.
Se você quiser usar o vba para pesquisar toda a coluna, isso é o que eu usaria:
Public Sub Copier()
Dim toRow As Integer
toRow = 1
Columns("A").Activate
For Each Value In Selection
If Value Then
Cells(toRow, 2).Value = Value
toRow = toRow + 1
End If
Next Value
End Sub
Tags microsoft-excel