Cellen samenvoegen
- 02/07/2007
Voorbeeldbestanden bij dit artikel: | |
Inleiding
Onlangs had ik een lastige karwei te klaren in Excel. Ik had een lijst van meerdere duizenden e-mailadressen, die ik achter elkaar moest plaatsen met een ; en een spatie ertussen. Nu, geen haar op mijn hoofd dat er aan denkt om zoiets manueel te doen. Ik herinnerde mij de wijze raad van Steven (Arafy) op Helpmij.nl: kopieer alle cellen, plak ze in Word met Bewerken > Plakken Speciaal > Niet-opgemaakte tekst en vervolgens doe vervang je in het hele document alinea-eindes (^p) door ; en een spatie erachter. Klaar!
Een betere aanpak
Een mooie methode is dat. Maar, en je hoort mij al afkomen, die methode vind ik niet algemeen genoeg en ook iets te tijdrovend. Pas ditzelfde maar eens toe op enkele cellen die niet samen 1 bereik vormen. Daarom schreef ik VBA-code voor jullie die:
- de inhoud van de cellen in het bereik samenvoegt
- waarbij je kan kiezen welk scheidingsteken je wil
- alles tegelijk naar het Klembord plakt
- en ook alles tegelijk naar het Immediate Window in VBA overbrengt (van daar kan je dan kopiëren)
VBA-code
Het Immediate Window in VBA (druk Ctrl + G daar) wordt doorgaans gebruikt voor het controleren van code door op goed gekozen momenten de inhoud van variabelen ter controle weg te zetten. Maar je kan daar eender welke tekst of getallen zetten, dus lijkt het mij een goed idee om alle cellen samen te voegen en daarnaar te kopiëren. Als de code uitgevoerd is, ga je daar naartoe en kopieer je de output. Die kan je dan als geadresseerden in een nieuwe e-mail plakken.
Het klembord
Maar het kan nog simpeler (voor jullie althans; de code is iets moeilijker). Je kan alles samen ook naar het Klembord kopiëren. Daarmee sla je de stap van het Immediate Window over en kan je rechtstreeks in de e-mail de adressen plakken. Kopiëren is al voor jou gedaan. Let op! Dit werkt enkel als je in VBA je bij Tools > References… (Extra > Verwijzingen…) een vinkje zet bij Microsoft Forms 2.0 object library. Voer je de code uit en krijg je: "Compile error: User-defined type not defined", dan heb je de verwijzing niet goed gelegd.
De code voor het kopiëren naar het Klembord haalde ik hier bij Chip Pearson. Kan heel nuttig zijn. Ongetwijfeld vind je zelf nog mogelijke toepassingen van de code hier of een stuk daaruit. Laat het mij zeker weten via het de contactpagina.