eu comecei a mexer com areas nomeadas agora
mas
já que vc jpá tem uma base
pega a primeira linha da tabela
li=Range(nome tabela).Row
pega a ultima linha da tabela
Lf= Li + Range(nome tabela).Rows.count - 1
for l=Li to Lf ' vai fazer loop em todas as linha da tabela
para coluna a mesma coisa
ou se pode fazer um loop for each
Obrigado, clareou um pouco minha mente, fiz o seguinte código porém estou tendo problemas na hora de ajustar a tabela,
Sub teste()
' Macro, apaga célula que for igual a B2 no intervalo A1:A20 e depois ajusta a tabela, eliminando o espaço em branco da tabela.
For contar = 1 To 20
Set CelulaAtual = Worksheets("Plan1").Cells(contar, 1)
If CelulaAtual.Text = Range("B2").Text Then
CelulaAtual.ClearContents ' Aqui beleza está apagando a célula
Range(Cells(contar + 1, 1):Cells(contar + 20, 1)).Select ' Da erro aqui, sei que a sintaxe ta errada ja tentei essas:
' ja tentei atribuir valor para CelulaAtual com Set CelulaAtual = Worksheets("Plan1").Cells(contar +1, 1) e então tentar o Range("CelulaAtual:A20").Select porém também da errado :/
Selection.Cut Destination:=Range("Cells(contar, 1):A19") ' Se souber a sintaxe da linha anterior acerto aqui
contar = 20
End If
Next contar
End Sub
Alguém sabe a sintaxe ou terei que fazer outro looping :/ ?
Postado : 21/05/2015 9:35 am