Página 1 de 1

Excluir Linhas por critério de Valor de Coluna

Enviado: 28 Abr 2023 às 14:28
por SandroLima
Boa tarde, pessoal.

Poderiam me ajudar com uma Macro que compara a Tabela TB_Bovespa_Operacoes com a Tabela TB_Bovespa_Carteira_de_Ativos?

Preciso que a Macro Exclua as linhas da Tabela TB_Bovespa_Carteira_de_Ativos (Tabela de Cor Verde) em que o Valor da Coluna Registro seja igual ao Valor da Coluna Registro da tabela TB_Bovespa_Operacoes (Tabela de Cor Azul) em que a Coluna [Bovespa (Carteira de Ativos)] seja igual a "" (Vazio).

No caso do exemplo anexo o resultado deve excluir as linhas de registro iguais a 3, 6 e 7.
Coloquei resultado esperado na Tabela TB_Resultado_Desejado (Tabela de Cor Laranja).

Segue planilha para verificação.

Re: Excluir Linhas por critério de Valor de Coluna

Enviado: 01 Mai 2023 às 09:17
por Foxtri
Bom dia.
Segue uma opção.
Até
Foxtri
Sub Excluir()
Dim Ulin As Long, XRng As Range, Cel As Range, XArea As Range
With Sheets("BOVESPA (OPERAÇÕES)")
Ulin = .Cells(Rows.Count, "B").End(xlUp).Row
Set XRng = .Range(.Cells(ActiveSheet.ListObjects(1).ListColumns("Registro").DataBodyRange(1, 1).Row, "H"), .Cells(Ulin, "H"))
For Each Cel In XRng
If Trim(Cel) = vbNullString Then
Set XArea = Sheets("BOVESPA (CARTEIRA DE ATIVOS)").Range("TB_Bovespa_Carteira_de_Ativos[Registro]").Find(Sheets("BOVESPA (OPERAÇÕES)").Cells(Cel.Row, 2))
If Not XArea Is Nothing Then
With Sheets("BOVESPA (CARTEIRA DE ATIVOS)")
.Range(.Cells(XArea.Row, "B"), .Cells(XArea.Row, "I")).Delete
End With
End If
End If
Next Cel
End With
End Sub

Re: Excluir Linhas por critério de Valor de Coluna

Enviado: 05 Mai 2023 às 00:24
por SandroLima
Obrigado pelo retorno, Foxtri.

Vou testar aqui e dou retorno.

Mais uma vez muito obrigado.