' Excel Macro ' Split column "Voornaam, tussenvoegsel, Achternaam" in 3 aparte kolomen. '------------------------------------------------------------------------------ ' ' Deze macro doorloopt elke rij in kolom A, splitst de volledige naam in voornaam, ' tussenvoegsel en achternaam, en schrijft de resultaten in kolommen B, C en D. ' ' Opmerking: Deze macro gaat ervan uit dat elke naam ten minste een voornaam en een achternaam heeft. ' Als de naam geen tussenvoegsel heeft, blijft de cel in kolom C leeg. ' ' 1 - Open je Excel-bestand en druk op Alt + F11 om de VBA-editor te openen. ' 2 - Klik op Insert en selecteer Module om een nieuw modulevenster te openen. ' 3 - Kopieer en plak de onderstaande VBA-code in het modulevenster: ' 4 - Sla de macro op door op het diskette-icoon te klikken of Ctrl + S te gebruiken. ' 5 - Sluit de VBA-editor en ga terug naar je Excel-werkblad. ' 6 - Druk op Alt + F8, selecteer SplitNames en klik op Run. '------------------------------------------------------------------------------- Sub SplitNames() Dim LastRow As Long Dim i As Long Dim FullName As String Dim Parts() As String Dim FirstName As String Dim Tussenvoegsel As String Dim LastName As String ' Find the last row with data in column A LastRow = Cells(Rows.Count, 1).End(xlUp).Row ' Loop through each row in column A For i = 1 To LastRow ' Get the full name from column A FullName = Cells(i, 1).Value ' Split the name into parts Parts = Split(FullName, " ") ' Initialize variables FirstName = Parts(0) Tussenvoegsel = "" LastName = Parts(UBound(Parts)) ' Check if there are tussenvoegsels If UBound(Parts) > 1 Then Dim j As Integer For j = 1 To UBound(Parts) - 1 If j = 1 Then Tussenvoegsel = Parts(j) Else Tussenvoegsel = Tussenvoegsel & " " & Parts(j) End If Next j End If ' Write the results to columns B, C, and D Cells(i, 2).Value = FirstName Cells(i, 3).Value = Tussenvoegsel Cells(i, 4).Value = LastName Next i End Sub