Views

...

Important:

Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance.

E-mails

Deixe seu e-mail para receber atualizações...

eBook Promo

VBA Excel - Delete as Linhas que não estiverem com a palavra indicada - Delete Rows Without Specific Word


Termo de Responsabilidade


Este código exclui todas as linhas onde a palavra especificada não aparecer. O código procurará casos em que toda a célula for igual à palavra(s) indicada. Como o código usa o método SpecialCells, é extremamente rápido - muito mais rápido do que ciclos através de um intervalo de células.

Sub DeleteRowsWithoutWord()
Dim Col As Variant, Word As String, LastRow As Long

Let Col = InputBox("Qual é a coluna na qual buscarei a palavra para deleção?")

If Len(Col) > 0 And Not Col Like "*[!0-9]*" Then Col = Val(Col)

Let Word = InputBox("Que palavra deve estar nas linhas que não apagarei?")
Let LastRow = Cells(Rows.Count, Col).End(xlUp).Row

On Error Resume Next

With Range(Cells(1, Col), Cells(LastRow, Col))
    .Replace Word, "#N/A", xlWhole
    .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    .SpecialCells(xlCellTypeConstants, xlLogical + xlNumbers + xlTextValues).EntireRow.Delete
    Let .SpecialCells(xlCellTypeConstants, xlErrors).Value = Word
End With
End Sub

References:

Tags: VBA, Excel, excluir, delete, row, line, specialcells, range,  


Inline image 1

eBooks VBA na AMAZOM.com.br

LinkWithinBrazilVBAExcelSpecialist

Related Posts Plugin for WordPress, Blogger...

Vitrine