Vervanging gebruiken in vba (met voorbeeld)


U kunt de methode Substitute() in VBA gebruiken om alle exemplaren van een specifieke tekst in een string te vervangen door nieuwe tekst.

Deze methode gebruikt de volgende basissyntaxis:

Vervangen (Tekst, Oude_tekst, Nieuwe_tekst, Instance_num)

Goud:

  • Tekst : de tekst waarin u tekens wilt vervangen
  • Oude_tekst : de tekst die moet worden vervangen
  • New_text : De tekst die als vervanging moet worden gebruikt
  • Instance_num ( optioneel ) : welk exemplaar van de oude tekst moet worden vervangen. Als er niets is opgegeven, worden alle exemplaren van de oude tekst vervangen.

De volgende voorbeelden laten zien hoe u deze methode in de praktijk kunt gebruiken.

Voorbeeld: hoe u Substitute in VBA gebruikt

Stel dat we de volgende lijst met uitdrukkingen in Excel hebben:

Stel dat we in plaats daarvan elke spatie in elke cel willen vervangen door een komma.

We kunnen hiervoor de volgende macro maken:

 Sub SubstituteText()

Dim rng As Range, cell As Range
Set rng = Range(" A2:A9 ")

For Each cell In rng
    cell = WorksheetFunction.Substitute(cell, " ", ",")
Next
    
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Merk op dat elke spatie in elke cel in kolom A is vervangen door een komma.

Merk op dat we ook de volgende syntaxis kunnen gebruiken om elke spatie door niets te vervangen:

 Sub SubstituteText()

Dim rng As Range, cell As Range
Set rng = Range(" A2:A9 ")

For Each cell In rng
    cell = WorksheetFunction.Substitute(cell, " ", "")
Next
    
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Merk op dat elke spatie in elke cel in kolom A door niets is vervangen.

Met andere woorden: we hebben alle spaties uit elke cel in kolom A verwijderd.

Let op : U kunt hier de volledige documentatie voor de VBA Substitute- methode 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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert