Excel / VBA - Uma pesquisa Find com retorno múltiplo

Uma simples pesquisa Find retorna que retornará a primeira coordenada.
  • Em algumas situações é necessário conhecer todos os detalhes das ocorrências encontradas.
  • Isto é conseguido com a função abaixo.

Em um módulo público

 'Retourne toutes les addresss trouvées dans la recherche' WkbN = nom da classe, avec cette donnée la fonction peut être mise dans un xla 'WksN = nom de la feuille Plage = les coordonnées de la plage à parcourir. 'Retour dans le tableau donner pt argumento. Função RechFind (ByVal Cle como String, ByVal WkbN como String, ByVal WksN como String, ByVal Plage como String, ByRef TBadress () como Variant) como Long Dim Cherche, Ix como Long, PrAddress com pastas de trabalho (WkbN) .Sheets (WksN) .Range (Plage) Set Cherche = .Find (Cle) Se não Cherche não é nada, então PrAddress = Cherche.Address Fazer ReDim Preservar TBadress (Ix) TBadress (Ix) = Cherche.Address Definir Cherche = .FindNext (Cherche) Ix = Ix + 1 Loop Enquanto Não Cherche Não É Nada E Cherche.Endereço Praddress End If End With 'nombre d'ocurence (s) trouvée (s), Retour 0 aucune occurence RechFind = Ix Set Cherche = Nada' Libere a ocupação ocupada por ' objet. Função final 

Adicione a uma pasta de trabalho Xla.

Usando uma macro

 Sub RechMulti () Dim R Como Long, TB () Dim i Como Integer R = RechFind ("12 *", ThisWorkbook.Name, "Feuil1", "B1: B500", TB ()) Se R> 0 Então Para i = 0 To R - 1 'ou ubound (TB)' Exemplos de Folhas ("Feuil1"). Células (i + 4, 5) = Intervalo (TB (i)). Linha Seguinte i Fim Se End Sub 

Usando um botão de chamada

 Private Sub CommandButton1_Click () Dim R Como Long, TB () Dim i Como Integer Range ("E4: E20"). ClearContents R = RechFind (Range ("E2"), ThisWorkbook.Name, ActiveSheet.Name, Range ("B1 : B500 "). Endereço, TB ()) Se R> 0 Então Para i = 0 Para R - 1 'ou u ligado (TB)' Exemple Sheets (" Feuil1 "). Células (i + 4, 5) = Range ( TB (i).) Linha Próximo i Fim Se End Sub 

Baixar

Faça o download da pasta de trabalho de teste: aqui.

Artigo Anterior Próximo Artigo

Principais Dicas