Notifications
Clear all

Localizar um determinado valor em uma tabela e apaga-lo

2 Posts
2 Usuários
0 Reactions
1,104 Visualizações
(@brunsftw)
Posts: 93
Estimable Member
Topic starter
 

Boa tarde.
Eu estou precisando de uma ajuda na elaboração de uma macro que percorra toda a minha tabela e apague todos os valores que forem iguais a "0:00"
Estou colocando um arquivo como exemplo!

 
Postado : 24/11/2016 11:03 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Não entendo pq TEM que ser macro, se você poderia usar um Localizar/Substituir...
MAS, (uma vez levei comida de toco de um moderador, pq eu tentava vender a solução mais simples pelo excel interativo, mesmo qdo o tópico estava no subforum de VBA....)
Então, vamos lá,
3 possíveis lógicas *(pode haver outros meios, claro):

1- Usar o Localizar/Substituir via código, assim, com poucas linhas, vc atende o seu objetivo:

Public Sub FF1()
    ActiveSheet.Cells.Replace What:="00:00:00", Replacement:="", LookAt:=xlPart
End Sub

2- Varrer todas as células em busca deste valor e uma a uma, trocar por nada:

Public Sub FF2()
Dim l   As Long
Dim c   As Long
    With ActiveSheet
        For l = 1 To 31 Step 1
            For c = 1 To 10 Step 1
                If .Cells(l, c).Value = 0 Then .Cells(l, c).Value = ""
            Next c
        Next l
    End With
End Sub

3- Fazer a mesma varredura, mas utilizando uma matriz

Public Sub FF3()
Dim mtz As Variant
Dim l   As Long
Dim c   As Long

    With ActiveSheet
        mtz = .Range("A1:J31").Value
        For l = 1 To 31 Step 1
            For c = 1 To 10 Step 1
                If mtz(l, c) = 0 Then mtz(l, c) = ""
            Next c
        Next l
        .Range("A1:J31").Value = mtz
    End With
End Sub

Existem mil maneiras, escolha uma !
FF

 
Postado : 24/11/2016 11:55 am