Issamu, irá fazer diferença se utilizar da forma que fez :
If Target.Address = "$A$2" Or Target.Address = "$D$2:$G$2" Then
Em celulas mescladas a captura do range se d á sempre pela primeira, ou seja se estão mescladas de"D2 a G2", Target.Adrres será sempre "D2", ou seja na instrução acima não funcionará pois devido Target.Adrres informar D2 a condição diz para continuar somente se for D2:G2.
Utize o F8 para seguir a rotina e ficara mais fácil compreender.
Everton, se utilizou conforme a primeira dica do Issamu, era para funcionar corretamente, a não ser que voce tenha algo de diferente na instrução que não indicou.
Olá Mauro! A principio achava que a propriedade .address se comportava da forma que você falou, porém ao testar o comando na janela de inspeção rápida percebi que não é bem assim.
A propriedade se comportará do jeito que você descreveu se utilizarmos o comando Activecell.Address, pois ai vai considerar a célula ativa, e mesmo estando mesclado, sempre trará o endereço de uma célula única, no caso a primeira célula superior esquerda do bloco mesclado. Agora se utilizar o comando Selection.Address percebi que o resultado é de fato o endereço completo do intervalo mesclado. Testando percebi que a variável Target do evendo em questão funciona como um Selection e não como Activecell, por isso que a minha solução proposta funcionou perfeitamente.
Abraços!
Rafael Issamu F. Kamimura
Moderador Oficial Microsoft Community - MCC (Contribuidor do Microsoft Community)
http://zip.net/bjrt0X - http://zip.net/bhrvbR
Foi útil? Clique na mãozinha
Conheça: http://excelmaniacos.com/
Postado : 25/09/2015 11:55 am