Vba: tekst naar kolommen converteren
U kunt de Range.TextToColumns -methode in VBA gebruiken om een tekstcel naar kolommen te converteren.
De volgende voorbeelden laten zien hoe u deze methode in de praktijk kunt gebruiken in verschillende scenario’s.
Voorbeeld 1: Tekst naar kolommen converteren (spatie als scheidingsteken)
Stel dat we de volgende lijst met namen hebben in het bereik A1:A9 in Excel:
We kunnen de volgende macro maken om de tekst in elke cel naar afzonderlijke kolommen te converteren, waarbij spaties als scheidingstekens worden gebruikt:
Sub TextToCols()
Range(" A1:A9 ").TextToColumns_
ConsecutiveDelimiter:=True, _
Space:=True
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Merk op dat de tekst in elke cel is omgezet in afzonderlijke kolommen.
Opmerking : het argument ConsecutiveDelimiter:=True vertelt VBA dat opeenvolgende scheidingstekens samen als één enkel scheidingsteken moeten worden beschouwd.
Voorbeeld 2: Tekst naar kolommen converteren (komma als scheidingsteken)
Stel dat we de volgende lijst met namen hebben in het bereik A1:A9, gescheiden door komma’s:
We kunnen de volgende macro maken om de tekst in elke cel naar afzonderlijke kolommen te converteren, waarbij komma’s als scheidingstekens worden gebruikt:
Sub TextToCols()
Range(" A1:A9 ").TextToColumns_
ConsecutiveDelimiter:=True, _
Comma:=True
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Merk op dat de tekst in elke cel is omgezet in afzonderlijke kolommen.
Voorbeeld 3: Tekst naar kolommen converteren (met tekst tussen dubbele aanhalingstekens)
Stel dat we de volgende lijst met namen hebben in het bereik A1:A9, gescheiden door spaties en inclusief dubbele aanhalingstekens:
We kunnen de volgende macro maken om de tekst in elke cel naar afzonderlijke kolommen te converteren:
Sub TextToCols()
Range(" A1:A9 ").TextToColumns_
TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=True, _
Space:=True
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Merk op dat de tekst in elke cel is omgezet in afzonderlijke kolommen.
Merk op dat we het argument TextQualifier:=xlDoubleQuote hebben gebruikt om VBA te laten weten dat de tekst tussen dubbele aanhalingstekens stond.
Opmerking : u kunt hier de volledige documentatie van de TextToColumns -methode in VBA vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken kunt uitvoeren met VBA:
VBA: het aantal tekens in een string tellen
VBA: hoe controleer je of een string een andere string bevat?
VBA: cellen tellen met specifieke tekst