VBA-functie vervangen - String vervangen

Inhoudsopgave

Deze zelfstudie laat zien hoe u de functie VBA vervangen kunt gebruiken om tekstreeksen te vervangen.

Functie vervangen

De VBA Replace-functie retourneert een string, met substituties. Met het gebruik van optionele parameters kan de nieuwe string beginnen op de positie gespecificeerd door start en eindigen aan het einde van de originele string.

VBA Vervang een subtekenreeks

De VBA-functie Vervangen kan worden gebruikt om elke gevonden substring te vervangen, in elk deel dat wordt gevonden.

12345678910111213141516 Sub VervangVoorbeeld_1()MsgBox Replace("ABCABCABC", "A", "!")'Resultaat is: "!BC!BC!BC"MsgBox Replace ("Ik hou van roze, rood en zwart", "roze", "paars")'Resultaat is: 'Ik hou van paars, rood en zwart'MsgBox Replace("A, B, C, A, B, C, A, B, C", ", ", ",")'Resultaat is: "ABCABCABC"MsgBox Replace("ABCABCABC", "ABC", "!")'Resultaat is: "!!!"MsgBox Replace("ABCABCABC", "ABc", "!")'Resultaat is: "ABCABCABC"MsgBox Replace("ABCABCABC", "ZBC", "!")'Resultaat is: "ABCABCABC"Einde sub

VBA Vervang startpositie

De VBA-functie Vervangen kan worden gebruikt om elke gevonden substring te vervangen, in elk deel dat wordt gevonden. Als we een startpositie toewijzen, zou het resultaat het deel van de originele string zijn na dat startpunt.

12345678910111213 Sub VervangVoorbeeld_2()MsgBox Replace("ABCABCABC", "A", "123") 'Resultaat is: "123BC123BC123BC"MsgBox Replace("ABCABCABC", "A", "123", 2) 'Resultaat is: "BC123BC123BC"MsgBox Replace("ABCABCABC", "A", "123", 7) 'Resultaat is: "123BC"MsgBox Replace("ABCABCABC", "A", "123", 8) 'Resultaat is: "BC"MsgBox Replace("ABCABCABC", "ABC", "!@") 'Resultaat is: "!@!@!@"MsgBox Replace("ABCABCABC", "ABC", "!@", 2) 'Resultaat is: "BC!@!@"MsgBox Replace("ABCABCABC", "ABC", "!@", 6) 'Resultaat is: "C!@"MsgBox Replace("ABCABCABC", "ABC", "!@", 7) 'Resultaat is: "!@"MsgBox Replace("ABCABCABC", "ABC", "!@", 8) 'Resultaat is: "BC"Einde sub

VBA Slechts een paar keer vervangen

De VBA-functie Vervangen kan worden gebruikt om elke gevonden substring te vervangen, in elk deel dat wordt gevonden. We kunnen optioneel beslissen hoeveel voorvallen moeten worden vervangen.

123456789101112 Sub VervangVoorbeeld_3()MsgBox Replace("ABCABCABC", "A", "12") 'Resultaat is: "12BC12BC12BC"MsgBox Replace("ABCABCABC", "A", "12", , 1) 'Resultaat is: "12BCABCABC"MsgBox Replace("ABCABCABC", "A", "12", , 2) 'Resultaat is: "12BC12BCABC"MsgBox Replace("ABCABCABC", "A", "12", , 3) ​​'Resultaat is: "12BC12BC12BC"MsgBox Replace("ABCABCABC", "A", "12", , 5) 'Resultaat is: "12BC12BC12BC"MsgBox Replace("ABCABCABC", "A", "12", 3, 1)'Resultaat is: "C12BCABC"'We hebben A vervangen door 12, 1 keer vanaf positie 3 van de originele snaar.Einde sub

VBA Vervang hoofdlettergevoeligheid

VBA Replace-functie is standaard hoofdlettergevoelig. U kunt dat gedrag wijzigen in hoofdletterongevoelig met behulp van een optionele parameter (vbTekstVergelijken). In dat geval moet u ook de startpositie van de zoekopdracht definiëren.

12345678910111213 Sub VervangVoorbeeld_4()MsgBox Replace("ABcABCABc", "ABc", "12")'Resultaat is: "12ABC12"MsgBox Replace("ABcABCABc", "ABc", "12", , , vbTextCompare)'Resultaat is: "121212"'Als we vbTextCompare gebruiken, moeten we de 2 andere optionele argumenten toevoegen:'begin en tel'MsgBox Replace("ABcABCABcABc", "ABc", "12", 3, 1)'Resultaat is: "cABC12ABc"'Vanuit positie 3 begonnen en maar 1 keer ABC vervangen.Einde sub

U kunt ook een hoofdletterongevoelige Vervanging uitvoeren door Option Compare Text toe te voegen aan de bovenkant van uw module:

1 Optie Tekst vergelijken

VBA Vervang dubbele aanhalingstekens

De VBA-functie Vervangen kan de dubbele aanhalingstekens vervangen die worden gebruikt om het begin en einde van een tekenreeks af te bakenen.

De VBA Chr-functie kan een teken van zijn nummer in de tekenset retourneren.

1 MsgBox Chr(34) 'Resultaat is: "

Of

1 MsgBox Chr(64) 'Resultaat is: @

Dubbele aanhalingstekens kunnen worden gebruikt binnen de VBA-functie Vervangen met behulp van """" of VBA-functie Chr(34).

12345678910111213 Sub VervangVoorbeeld_5()Dim StrEx As StringStrEx = "AB""AB"""MsgBox StrEx 'Resultaat is: AB"AB"MsgBox Replace(StrEx, Chr(34), "12")'Resultaat is: AB12AB12'MsgBox Replace(StrEx, """", "DQ")'Resultaat is: "ABDQABDQ"Einde sub

VBA Vervang breuklijn in cel

De VBA-functie Vervangen kan het speciale teken van de breuklijn in een cel vinden en verwijderen of vervangen door een spatieteken. Het speciale teken van de onderbrekingsregel kan in een cel worden ingevoerd met behulp van de sneltoets Alt+Enter en kan worden gebruikt in VBA-code met zijn tekensetnummer met behulp van de VBA-functie Chr(10).

1234567891011121314 Sub VervangVoorbeeld_6()Dim StrEx As String 'Definieer een stringvariabele''Lees de waarde van cel A2 in werkblad Blad1'StrEx = ThisWorkbook.Worksheets("Blad1").Bereik("A2").Waarde'Het teken van de breuklijn dat is ingevoerd met Alt+Enter is Chr(10) en is onzichtbaar.'Deze coderegel vervangt dat teken door spatie'StrEx = Vervang(StrEx, Chr(10), " ")'Schrijf de vervangen waarde in cel B2 in werkblad Blad1ThisWorkbook.Worksheets("Blad1").Bereik("B2").Waarde = StrExEinde sub

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave