VBA -ersättningsfunktion - Ersätt sträng

Innehållsförteckning

Denna handledning visar hur du använder ersätt VBA -funktionen för att ersätta textsträngar.

Ersätt funktion

Funktionen VBA Replace returnerar en sträng, med substitutioner gjorda. Med användning av valfria parametrar kan den nya strängen börja vid den position som anges av start och slutar i slutet av den ursprungliga strängen.

VBA Ersätt Ersätt en delsträng

VBA Replace -funktionen kan användas för att ersätta alla delsträngar som finns, i varje del som den hittas.

12345678910111213141516 Sub ReplaceExample_1 ()MsgBox Ersätt ("ABCABCABC", "A", "!")'Resultatet är: "! BC! BC! BC"MsgBox Ersätt ("Jag gillar rosa, rött och svart", "rosa", "lila")'Resultatet är: "Jag gillar lila, rött och svart"MsgBox Ersätt ("A, B, C, A, B, C, A, B, C", ",", ",")'Resultatet är: "ABCABCABC"MsgBox Ersätt ("ABCABCABC", "ABC", "!")'Resultatet är: "!!!"MsgBox Ersätt ("ABCABCABC", "ABc", "!")'Resultatet är: "ABCABCABC"MsgBox Ersätt ("ABCABCABC", "ZBC", "!")'Resultatet är: "ABCABCABC"Avsluta Sub

VBA Ersätt utgångsläge

VBA Replace -funktionen kan användas för att ersätta alla delsträngar som finns, i varje del som den hittas. Om vi ​​tilldelar en startposition blir resultatet delen av den ursprungliga strängen efter den startpunkten.

12345678910111213 Sub ReplaceExample_2 ()MsgBox Ersätt ("ABCABCABC", "A", "123") 'Resultat är: "123BC123BC123BC"MsgBox Ersätt ("ABCABCABC", "A", "123", 2) 'Resultat är: "BC123BC123BC"MsgBox Ersätt ("ABCABCABC", "A", "123", 7) 'Resultat är: "123BC"MsgBox Ersätt ("ABCABCABC", "A", "123", 8) 'Resultat är: "BC"MsgBox Ersätt ("ABCABCABC", "ABC", "!@") 'Resultat är: "!@!@!@"MsgBox Ersätt ("ABCABCABC", "ABC", "!@", 2) 'Resultat är: "BC!@!@"MsgBox Ersätt ("ABCABCABC", "ABC", "!@", 6) 'Resultat är: "C!@"MsgBox Ersätt ("ABCABCABC", "ABC", "!@", 7) 'Resultat är: "!@"MsgBox Ersätt ("ABCABCABC", "ABC", "!@", 8) 'Resultat är: "BC"Avsluta Sub

VBA Ersätt endast några få tillfällen

VBA Replace -funktionen kan användas för att ersätta alla delsträngar som finns, i varje del som den hittas. Vi kan valfritt bestämma hur många händelser som ska ersättas.

123456789101112 Sub ReplaceExample_3 ()MsgBox Ersätt ("ABCABCABC", "A", "12") 'Resultat är: "12BC12BC12BC"MsgBox Ersätt ("ABCABCABC", "A", "12",, 1) 'Resultatet är:' 12BCABCABC 'MsgBox Ersätt ("ABCABCABC", "A", "12",, 2) 'Resultat är:' 12BC12BCABC 'MsgBox Ersätt ("ABCABCABC", "A", "12",, 3) 'Resultatet är:' 12BC12BC12BC 'MsgBox Ersätt ("ABCABCABC", "A", "12",, 5) 'Resultat är:' 12BC12BC12BC 'MsgBox Ersätt ("ABCABCABC", "A", "12", 3, 1)'Resultatet är: "C12BCABC"'Vi ersatte A med 12, 1 gång med start från position 3 i den ursprungliga strängen.Avsluta Sub

VBA Ersätt fodralkänslighet

VBA -ersättningsfunktionen är som standard skiftlägeskänslig. Du kan ändra det beteendet till skiftlägeskänslig med en valfri parameter (vbTextCompare). I så fall måste du också definiera sökningens startposition.

12345678910111213 Sub ReplaceExample_4 ()MsgBox Ersätt ("ABcABCABc", "ABc", "12")'Resultatet är: "12ABC12"MsgBox Ersätt ("ABcABCABc", "ABc", "12",,, vbTextCompare)'Resultatet är: "121212"'När vi använder vbTextCompare måste vi lägga till de 2 andra valfria argumenten:'börja och räknaMsgBox Ersätt ("ABcABCABcABc", "ABc", "12", 3, 1)'Resultatet är: "cABC12ABc"'Startade från position3 och ersatte ABC bara 1 gång.Avsluta Sub

Du kan också utföra en byte som inte är skiftlägeskänslig genom att lägga till Alternativjämför text högst upp i din modul:

1 Alternativ Jämför text

VBA Ersätt dubbla citat

VBA Replace -funktionen kan ersätta det dubbla citattecken som används för att avgränsa början och slutet av en sträng.

VBA Chr -funktionen kan returnera ett tecken från dess nummer i teckenuppsättningen.

1 MsgBox Chr (34) 'Resultat är: "

Eller

1 MsgBox Chr (64) 'Resultat är: @

Dubbla citattecken kan användas inuti VBA Ersätt funktion med “” ”” eller VBA funktion Chr (34).

12345678910111213 Sub ReplaceExample_5 ()Dim StrEx som strängStrEx = "AB" "AB" ""MsgBox StrEx resultat är: AB "AB"MsgBox Ersätt (StrEx, Chr (34), "12")'Resultatet är: AB12AB12MsgBox Ersätt (StrEx, "" "", "DQ")'Resultatet är: "ABDQABDQ"Avsluta Sub

VBA Ersätt brytlinje i cell

VBA Replace -funktionen kan hitta specialtecknet för brytlinjen i en cell och ta bort det eller ersätta det med ett mellanslagstecken. Brytlinjens specialtecken kan matas in i en cell med tangentbordsgenvägen Alt+Enter och kan användas i VBA -kod med dess teckenuppsättningsnummer med VBA -funktionen Chr (10).

1234567891011121314 Sub ReplaceExample_6 ()Dim StrEx As String 'Definiera en strängvariabel'Läs värdet för cell A2 i kalkylblad 1StrEx = ThisWorkbook.Worksheets ("Sheet1"). Område ("A2"). Värde'Brytlinjetecknet som anges med Alt+Enter är Chr (10) och är osynligt.'Denna kodrad ersätter det tecknet med mellanslagStrEx = Ersätt (StrEx, Chr (10), "")'Skriv det ersatta värdet i cell B2 i kalkylbladet1ThisWorkbook.Worksheets ("Sheet1"). Omfång ("B2"). Value = StrExAvsluta Sub

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave