Excel / VBA - Etsi hakua useilla palautuksilla
- Joissakin tilanteissa on välttämätöntä tietää kaikki löytyneiden tapahtumien yksityiskohdat.
- Tämä saavutetaan alla olevan toiminnon avulla.
Julkisessa moduulissa
'Retourne toutes les adresses trouvées dans la recherche' WkbN = nomenklatuuri, avec cette donné de la fonction ja dla 'WksN = nom de la feuille' Plage = les coordonnées de la plage à parcourir. 'Retour dans le tableau donner en argument. Toiminto RechFind (ByVal Cle merkkijonoina, ByVal WkbN merkkijonoina, ByVal WksN merkkijonona, ByVal Plage kuten merkkijono, ByRef TBadress () As Variantina) Kuten Long Dim Cherche, Ix niin pitkä, PrAddress työkirjoilla (WkbN). .Range (Plage) Aseta Cherche = .Seuraava (Cle) Jos ei Cherche ei ole mitään sitten PrAddress = Cherche.Address Tee uudelleen säilytys TBadress (Ix) TBadress (Ix) = Cherche.Address-sarja Cherche = .Seuraava (Cherche) Ix = Ix + 1 silmukka, kun ei ole mitään, ja Cherche.Address PrAddress End Jos loppu 'nombre d'occurence (s) Trouvée (s), Retour 0 si aucune events) RechFind = Ix Set Cherche = Ei mitään' Libére la mémoire Occée par l ' objet. Lopeta toiminto
Lisää Xla-työkirjaan.
Makron käyttäminen
Sub RechMulti () Dim R kuten pitkä, TB () Dim i kuten kokonaisluku R = RechFind ("12 *", ThisWorkbook.Name, "Feuil1", "B1: B500", TB ()) Jos R> 0 Sitten i = 0 - R - 1 'ou ubound (TB)' - levyt ("Feuil1"). Solut (i + 4, 5) = alue (TB (i)) Rivi Seuraava i Lopeta, jos lopetat
Puhelun painikkeen käyttäminen
Yksityinen alikomentoButton1_Click () Dim R kuten pitkä, TB () Dim i integer -alueena ("E4: E20") ClearContents R = RechFind (Range ("E2"), ThisWorkbook.Name, ActiveSheet.Name, Range ("B1 : B500 "). Osoite, TB () Jos R> 0 Sitten i = 0 - R - 1 'ou ubound (TB)' - levyt (" Feuil1 "). Solut (i + 4, 5) = Alue ( TB (i). Rivi Seuraava i Lopeta Jos loppu
ladata
Lataa testikirja: täältä.