Página 1 de 1

Excluir Linhas com criterio

Enviado: 16 Fev 2019 às 18:36
por davispi
Boa noite,
Preciso excluir da planilha em anexo as linhas que contiverem os valores " - " das células D e J e jogar o conteúdo ( se existir) para a cima (como o próprio Excel faz) confesso que sou leigo no assunto, achei essa macro que supostamente faz o que eu preciso, porém chega a um determinado valor ela da Erro e para, se alguém puder me ajudar agradeço.

Sub limpar_relatorio()

' Excluir Inativos
Application.ScreenUpdating = False
Range("D:J").Select
Dim w As Range
Dim faixa As Range

Set faixa = Selection
Dim criterio As String
criterio = "-"
For Each w In faixa
If InStr(1, w.Value2, criterio) <> 0 Then
w.Activate
ActiveCell.EntireRow.Delete
Call Excluir_Inativos
Exit Sub
End If
Next

Application.ScreenUpdating = True
End Sub

Re: Excluir Linhas com criterio

Enviado: 17 Fev 2019 às 11:09
por osvaldomp
Experimente:
Código: Selecionar todos
Sub ExcluiLinhas()
 Application.ScreenUpdating = False
  Range("K11:K" & Cells(Rows.Count, 2).End(3).Row).Value = "=IF(D11=""-"",1,0)"
  Range("A11:K" & Cells(Rows.Count, 2).End(3).Row).AutoFilter 11, 1
  Range("A12:K" & Cells(Rows.Count, 2).End(3).Row).EntireRow.Delete
  ActiveSheet.AutoFilterMode = False
  Columns(11).Value = ""
 Application.ScreenUpdating = True
End Sub

Excluir Linhas com criterio

Enviado: 17 Fev 2019 às 13:08
por davispi
Boa Tarde, Primeiramente obrigado, a macro funcionou em parte ela removeu tudo da certinho da coluna D porém da coluna J que tb tem "-" ela não removeu

Re: Excluir Linhas com criterio

Enviado: 17 Fev 2019 às 13:26
por osvaldomp
Verdade. Falha minha. Desculpe.

substitua esta expressão no código
"=IF(D11=""-"",1,0)"

por esta
"=IF(OR(D11=""-"",J11=""-""),1,0)"