VBA - Como testar um trecho com células mescladas

Agosto 2017


Não é fácil conhecer o conteúdo de uma célula situada em um trecho com células simples e células mescladas, principalmente se as primeiras células mescladas não começarem na mesma coluna que a coluna testada.

Para ser mais claro, vamos testar a coluna 5 (E). Suponhamos que as células de uma linha estejam mescladas de B a F; para esta linha, o teste deve ser feito na coluna B em vez da E. O teste consiste em procurar uma palavra na coluna E e excluir a linha correspondente, se a palavra for encontrada em uma das células da coluna E.

Sub Excluirlinha ComMerge()    
Dim Lig As Long
Dim Col As Integer
Dim Mot As String
Dim Mg, TB
'para o exemplo, a coluna a ser testada =5
Coluna = 5
Palavra = "APalavra" 'substituir APalavra pela qual você quer buscar

For Lig = Cells(65536, Col).End(xlUp).Row To 1 Step -1
Set Mg = Cells(Lig, Col).MergeArea
TB = Split(Mg.Address, ":")
If Cells(Lig, TB(0)).Value = Mot Then
Rows(Lig).Delete
End If
Next Lig
End Sub


Observação: o teste da palavra leva em conta as maiúsculas e as minúsculas, assim: APalavra, APALAVRA, apalavra, etc, serão consideradas palavras diferentes. Se você não quiser que elas sejam consideradas como tal, você deverá ajustar a macro acima com a desta outra dica

Veja também

Artigo original publicado por lermite222. Tradução feita por pintuda. Última modificação: 25 de setembro de 2016 às 13:58 por pintuda.
Este documento, intitulado 'VBA - Como testar um trecho com células mescladas', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.