VBA zoeken en vervangen

Status
Niet open voor verdere reacties.

joskjos

Gebruiker
Lid geworden
9 sep 2013
Berichten
94
Hallo,

Ik heb een bestandje waarin gezocht wordt in kolom A5:A16 naar de te zoeken tekst1 "straatnaam1" deze moet vervangen worden bij de eerst gevonden waarde in; straatnaam1 + huisnummer1. Daarna moet er verder gezocht worden in kolom A5:A16 naar tekst1 "straatnaam1" maar deze moet vervangen worden voor; straatnaam1 + huisnummer2. enz.
De te zoeken tekst1 "straatnaam1" komt meerdere keren voor in kolom A5:A16 maar moet elke keer vervangen worden voor straatnaam1 en een verschillend huisnummer.
De huisnummers staan in het voorbeeld bestandje in kolom C5:C16. De te zoeken teskt2 is "straatnaam2" en moet vervangen worden voor; straatnaam2 en elke keer een verschillend huisnummer enz. In het voorbeeldbestandje staan de straatnamen gesorteerd, maar dit hoeft niet zo te zijn.

Ik heb bijgevoegd een voorbeeld bestandje met daarin een macro opgenomen maar die werkt niet helemaal goed.
 

Bijlagen

  • vervangen.xlsm
    13,8 KB · Weergaven: 33
Bedankt voor het meedenken!
Het is de bedoeling dat de uitkomst in A5:A16 komt te staan. Eerst zoeken, dan vervangen in dezelfde cel. Vandaar dat ik denk dat dit middels VBA wel kan.
De opgenomen Macro is het idee, zoeken en dan vervangen en vervolgens weer zoeken en vervangen enz. Alleen de Macro kijkt naar activecell en daar gaat het mis. Dit zou iets met range moeten zijn verwacht ik.
 
Waarom schrijf je de huisnummers niet rechtstreeks bij op de juiste plaats?
 
@cow18, dit is inderdaad wat ik bedoelde. Het gaat nu middels vba welke een formule plaatst.
Waarschijnlijk kan het ook volledig met vba en zonder formules, maar deze oplossing werkt prima bedankt!
 
Nog een variant op de VBA oplossing is:
Sorteer beide lijsten op straatnaam, dan hoef je maar 1 keer door de langste lijst te loop-en en op de match vul je het huisnummer aan.
Dat is veel sneller dan per ongesorteerde straatnaam steeds de bronlijst volledig te door-loop-en.
Met Dictionary gaat dat laatste echter ook razendsnel.
Het is pas de moeite waard om te optimaliseren als je heel vaak veel huisnummers moet aanvullen ;)
Aan de andere kant kun je op deze site gratis oplossingen verkrijgen en als je het slim speelt krijg je toch die optimale oplossing :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan