Aaneenschakelen in Excel VBA (4 methoden)

  • Deel Dit
Hugh West

In Excel is aaneenschakelen het proces waarbij twee strings worden samengevoegd tot één string. Eenvoudig gezegd, als we een tabel hebben met voornamen in één kolom en achternamen in een andere, kunnen we de aaneenschakelingsprocedure gebruiken om ze in een fractie van een seconde aan elkaar te koppelen en te combineren in één enkele cel. In Excel hebben we een functie met de naam CONCATENATE () waarmee we deze aaneenschakeling kunnen doen. Echter, in VBA is dit type functie niet toegestaan. We kunnen niet gebruiken CONCATENATE () in de VBA code omdat het niet zal werken. Omdat... VBA heeft geen ingebouwde functies en we kunnen geen spreadsheetfuncties gebruiken. Dus, deze les zal u tonen hoe u het volgende kunt gebruiken VBA Aaneenschakelen om meerdere cellen, kolommen en rijen in Excel te combineren.

Download Praktijk werkboek

Download dit oefenwerkboek om te oefenen terwijl u dit artikel leest.

VBA Aaneenschakelen Functie.xlsm

Inleiding tot de functie VBA Aaneenschakelen

Zoals gezegd heeft Excel geen ingebouwde functie voor VBA Samenvoegen, maar we kunnen het als functie laten werken door verschillende strings te combineren met operatoren. Hier gebruiken we de ampersand (&) als onze operator.

⟴ Syntaxis

String1 = " Eerste tekst"

String2 = " Tweede tekst"

⟴ Return Value

Return_value = String1 & String2

4 Verschillende toepassingen van de VBA functie Aaneenschakelen in Excel

Hier zullen we 4 verschillende benaderingen gebruiken om het aaneenschakelen uit te voeren. We zullen verschillende operatoren toepassen in combinatie met VBA code om dit te bereiken.

1. Ampersand (&) gebruiken om cellen samen te voegen in VBA Samenvoegen

Zoals in de onderstaande schermafbeelding te zien is, hebben we een gegevensverzameling in twee kolommen met voornamen in de ene kolom en achternamen in de andere. Door de twee kolommen samen te voegen, kunnen we nu de hele namen krijgen. Omdat VBA heeft geen ingebouwde methoden voor aaneenschakeling, we gebruiken de ampersand (&) operator zoals beschreven in de onderstaande instructies.

Stap 1:

  • Druk eerst op Alt + F11 om de Werkblad met macro's.
  • Klik dan op
  • Selecteer Module .

Stap 2:

  • Om twee cellen te combineren tot één, kopieer en plak je het volgende VBA
 Sub Concatenate2() Dim String1 Als String Dim String2 Als String Dim full_string Als String String1 = Cells(5, 2).Value String2 = Cells(5, 3).Value Cells(5, 5).Value = String1 & String2 MsgBox (full_string) End Sub 

Hier,

  • String1 = Cellen(5, 2).Waarde is de eerste cellocatie B5 rij 5, en kolom 2 .
  • String2 = Cellen(5, 3).Waarde is de tweede cellocatie C5 rij 5, en kolom 3 .
  • Cells(5, 5).Value = String1 & String2 is de locatie van de resultaatcel E5 rij 5 en kolom 5 .
  • String1 & String2 zijn de twee snaren verbonden door de ampersand (&)

Stap 3:

  • Sla op en druk op F5 om het programma uit te voeren.

Daarom krijgt u het resultaat in de E5 cel van je huidige werkblad.

Stap 4:

  • Volg en herhaal de stappen voor de overige cellen en verkrijg de resultaten zoals in de onderstaande afbeelding.

Let op. Uitvoeren VBA code, elke keer ervoor zorgen dat uw Excel-bestand wordt opgeslagen in Excel Werkblad met macro's (xlsm.) formaat.

Lees meer: Hoe VBA StrComp gebruiken in Excel (5 veelvoorkomende voorbeelden)

2. Plus (+) operator gebruiken om cellen samen te voegen in VBA Samenvoegen

Zoals beschreven in de vorige paragraaf hebben wij de ampersand gebruikt (&) operator om celstrings samen te voegen. U kunt hetzelfde resultaat verkrijgen door de plus toe te passen (+) teken in plaats van de ampersand (&) operator. Volg deze stappen om het te laten doen.

Stap 1:

  • Openen Macro in Excel, druk op Alt + F11 .
  • Klik op Plaats en selecteer
  • Na het openen van de programmapagina plakt u het volgende VBA
 Sub Concatenate2() Dim String1 als String Dim String2 als String Dim full_string als String1 = Cells(5, 2).Value String2 = Cells(5, 3).Value Cells(5, 5).Value = String1 + String2 MsgBox (full_string) End Sub 

Hier,

  • Cells(5, 5).Value = String1 + String2 is deze lijn die we gebruiken plus (+) teken in plaats van de ampersand (&)

Stap 2:

  • Sla na het plakken op en druk op F5 om het programma uit te voeren. Bijgevolg zie je de verandering in cel E5 .

  • Om het eindresultaat te verkrijgen, vult u de vereiste cellen in door de vorige stappen opnieuw uit te voeren.

Lees meer: De VBA StrConv-functie gebruiken (5 voorbeelden)

Vergelijkbare lezingen:

  • Een Sub aanroepen in VBA in Excel (4 voorbeelden)
  • Een waarde teruggeven in een VBA-functie (zowel array- als niet-arraywaarden)
  • Gebruik van de VBA DIR-functie in Excel (7 voorbeelden)
  • VBA UCASE-functie gebruiken in Excel (4 voorbeelden)
  • De InStr-functie in VBA gebruiken (3 voorbeelden)

3. Meerdere kolommen toevoegen met VBA Samenvoegen

In de vorige twee benaderingen hebben we besproken hoe we twee cellen kunnen combineren. Als we het echter op de hele kolom willen toepassen, zal het één voor één toevoegen veel tijd kosten. We zullen u leren hoe u meerdere kolommen totaal kunt toevoegen met VBA code voor dit.

Stap 1:

  • Ten eerste, om te openen Macro pers Alt + F11
  • Kies Module van de Plaats tab
  • Plak dan het volgende VBA
 Sub ConcatCols() 'voeg kolommen B & C samen in kolom E Dim LastRow As Long With Worksheets("Sheet3") LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row With .Range("E5:E" & LastRow) .Formula = "=B5&C5" .Value = .Value End With End With End Sub 

Hier,

  • Met Werkbladen("Blad3") is uw huidige werkbladnaam.
  • LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row is de eerste kolomnaam.
  • Met .Range("E5:E" & LastRow) is het resultaat retour celbereik.
  • .Formula = "=B5&C5" is de formule om de eerste cel van het bereik te verbinden.

Stap 2:

  • Sla tenslotte op en druk op F5 om het programma uit te voeren.

Daardoor krijgt u de resultaten volledig in een kolom.

Lees meer: Hoe VBA Rnd gebruiken in Excel (4 methoden)

4. Meerdere rijen samenvoegen met VBA Concatenate

Naast het toevoegen van meerdere kolommen kunnen we ook VBA code om meerdere rijen samen te voegen tot één. Zoals in de onderstaande schermafbeelding, willen we de drie rijen samenvoegen tot één. Om de rijen samen te voegen, volgt u de eenvoudige stappen hieronder.

Stap 1:

  • Voor het activeren van Macro in Excel, druk op Alt + F11 .
  • Selecteer vervolgens Module van de Plaats
  • Om de rijen samen te voegen, plak je de VBA
 Sub vba_concatenate() Dim rng als Range Dim i als String Dim SourceRange als Range Set SourceRange = Range("B5:D5") For Each rng In SourceRange i = i & rng & " " Next rng Range("B8").Value = Trim(i) End Sub 

Hier,

  • Set SourceRange = Range("B5:D5") is het broncelbereik.
  • Range("B8").Value = Trim(i) is het nummer van de retourcel.

Stap 2:

  • Sla tenslotte het programma op en druk op F5 om te lopen.

Het eindresultaat van de aaneenschakeling van de drie rijen wordt dus getoond in cel B8 .

Lees meer: Hoe de bovenste rijen in Excel te verbergen (7 methoden)

Conclusie

Samenvattend hoop ik dat dit bericht duidelijke instructies heeft gegeven over het gebruik van VBA aaneenschakelen in Excel op verschillende manieren. Al deze technieken moet u leren en gebruiken op uw gegevens. Bestudeer het oefenboek en gebruik uw nieuw verworven kennis. Dankzij uw vriendelijke steun zijn wij gemotiveerd om door te gaan met het maken van workshops zoals deze.

Aarzel niet om contact met ons op te nemen als u vragen heeft. Laat ons weten wat u ervan vindt in het commentaarveld hieronder.

De Exceldemy Het team reageert voortdurend op uw vragen.

Hugh West is een zeer ervaren Excel-trainer en -analist met meer dan 10 jaar ervaring in de branche. Hij heeft een bachelor in Accounting en Finance en een master in Business Administration. Hugh heeft een passie voor lesgeven en heeft een unieke lesaanpak ontwikkeld die gemakkelijk te volgen en te begrijpen is. Zijn deskundige kennis van Excel heeft duizenden studenten en professionals over de hele wereld geholpen hun vaardigheden te verbeteren en uit te blinken in hun carrière. Via zijn blog deelt Hugh zijn kennis met de wereld en biedt hij gratis Excel-tutorials en online trainingen aan om individuen en bedrijven te helpen hun volledige potentieel te bereiken.