Suponha que deseja acertar a sua base de dados de endereço e para isso necessite corrigir os endereços de acordo com a base disponibilizada. alguns endereços contém a string "- - " que indica a numeração de alcance do CEP, informando onde começa e até onde vai a respectiva numeração. Isso não é nada útil no seu cadastro, pois deseja apenas o nome correto da Rua. Aqui surge a pergunta:Como faço para que retornar apenas a parte do endereço que desejo, ignorando o restante que não necessito?AVENIDA PRESIDENTE GETÚLIO VARGAS - - de 1182 a 1732 - lado parAVENIDA PRESIDENTE GETÚLIO VARGASRUA DA JUVENTUDE - - até 678/679RUA DA JUVENTUDERUA AMARALINA - - de 1391/1392 ao fimRUA AMARALINARUA MINISTRO ALFREDO BUZAIDE - - de 547/548 ao fimRUA MINISTRO ALFREDO BUZAIDE
Supondo que o nome seja ''ENDERECO", a sintaxe seria:
BetterCompare ([ENDERECO];" -")
Function BetterCompare (nFrase As Variant, nExclude As Variant) As StringDim nSize As VariantDim nInitXtract As VariantIf InStr (1, nFrase, nExclude) <> 0 ThenLet nSize = Len (nFrase)Let nInitXtract = InStr (1, nFrase, nExclude)Let BetterCompare = Mid (nFrase, 1, nInitXtract)ElseLet BetterCompare = nFraseEnd IfEnd Function
Tags: VBA, Tip, deduplicação, higienização, correio, endereço