VBA – Procurando o Endereço de uma célula no Excel
Funções personalizadas são muito úteis, principalmente quando nas funções Excel falta só aquele pedaço que faria servir perfeitamente para nós.
Bom, sem dor, se valor. Precisei encontrar em um determinado Range, o endereço de uma célula com base em um valor. O problema é que este Range é composto por linhas e colunas, por exemplo, A1:C30. Funções como ENDEREÇO, CORRESP e outras funcionam somente com range baseado em uma coluna, ou linha. O jeito é criar uma nova.
A função personalizada abaixo procura um valor num Range informado e retorna o endereço:
Function PROCURAENDERECO(ByVal Area As Range, ByVal Valor_Procurado As String) If Not Area.Find(Valor_Procurado) Is Nothing Then PROCURAENDERECO = Area.Find(Valor_Procurado).Address Else PROCURAENDERECO = CVErr(xlErrNA) End If End Function
Se alguma célula do Range contiver o valor procurado, a função retorna o endereço da célula, ou o famoso erro #N/D. Pode obviamente ser chamada por qualquer rotina VBA. Abaixo um exemplo do resultado:
Bom proveito!


71 Convidados
2 Bots
Leave a Reply
You must be logged in to post a comment.