VBA csere funkció - karakterlánc cseréje

Tartalomjegyzék

Ez az oktatóanyag bemutatja, hogyan kell használni a VBA cseréje funkciót a szöveg karakterláncainak cseréjéhez.

Function cseréje

A VBA Replace függvény karakterláncot ad vissza, a helyettesítésekkel. Az opcionális paraméterek használatával az új karakterlánc a kezdet által megadott helyen kezdődhet, és az eredeti karakterlánc végén ér véget.

VBA Replace Substitute a Substring

A VBA Replace funkcióval helyettesítheti a talált alstringeket, amelyek minden részében megtalálhatók.

12345678910111213141516 AlcserePélda_1 ()MsgBox Replace ("ABCABCABC", "A", "!")'Az eredmény: "! BC! BC! BC"MsgBox Replace ("Szeretem a rózsaszín, piros és fekete", "rózsaszín", "lila")"Az eredmény:" szeretem a lila, piros és fekete színeket "MsgBox csere ("A, B, C, A, B, C, A, B, C", ",", ",")'Az eredmény: "ABCABCABC"MsgBox Replace ("ABCABCABC", "ABC", "!")'Az eredmény: "!!!"MsgBox Replace ("ABCABCABC", "ABc", "!")'Az eredmény: "ABCABCABC"MsgBox Replace ("ABCABCABC", "ZBC", "!")'Az eredmény: "ABCABCABC"End Sub

VBA Kezdő pozíció cseréje

A VBA Replace funkcióval helyettesítheti a talált alstringeket, amelyek minden részében megtalálhatók. Ha kezdő pozíciót rendelünk hozzá, akkor az eredmény az eredeti karakterlánc része lesz a kezdőpont után.

12345678910111213 AlcserePélda_2 ()MsgBox Replace ("ABCABCABC", "A", "123") 'Az eredmény: "123BC123BC123BC"MsgBox Replace ("ABCABCABC", "A", "123", 2) 'Az eredmény: "BC123BC123BC"MsgBox Replace ("ABCABCABC", "A", "123", 7) 'Az eredmény: "123BC"MsgBox Replace ("ABCABCABC", "A", "123", 8) 'Az eredmény: "BC"MsgBox Replace ("ABCABCABC", "ABC", "!@") 'Az eredmény: "!@!@!@"MsgBox Replace ("ABCABCABC", "ABC", "!@", 2) 'Az eredmény: "BC!@!@"MsgBox Replace ("ABCABCABC", "ABC", "!@", 6) 'Az eredmény: "C!@"MsgBox Replace ("ABCABCABC", "ABC", "!@", 7) 'Az eredmény: "!@"MsgBox Replace ("ABCABCABC", "ABC", "!@", 8) 'Az eredmény: "BC"End Sub

A VBA csak néhány esetben cserélje ki

A VBA Replace funkcióval helyettesítheti a talált alstringeket, amelyek minden részében megtalálhatók. Opcionálisan eldönthetjük, hogy hány előfordulást kell helyettesíteni.

123456789101112 Sub ReplaceExample_3 ()MsgBox Replace ("ABCABCABC", "A", "12") 'Az eredmény: "12BC12BC12BC"MsgBox Replace ("ABCABCABC", "A", "12",, 1) 'Az eredmény: "12BCABCABC"MsgBox Replace ("ABCABCABC", "A", "12",, 2) 'Az eredmény: "12BC12BCABC"MsgBox Replace ("ABCABCABC", "A", "12",, 3) 'Az eredmény: "12BC12BC12BC"MsgBox Replace ("ABCABCABC", "A", "12",, 5) 'Az eredmény: "12BC12BC12BC"MsgBox Replace ("ABCABCABC", "A", "12", 3, 1)'Az eredmény: "C12BCABC"„Az A -t 12 -re cseréltük, 1 alkalommal az eredeti karakterlánc 3. pozíciójából kiindulva.End Sub

VBA Cserélje ki a kis- és nagybetűket

A VBA csere funkció alapértelmezés szerint megkülönbözteti a kis- és nagybetűket. Ezt a viselkedést kis- és nagybetűk megkülönböztetésére változtathatja egy opcionális paraméter használatával (vbTextCompare). Ebben az esetben meg kell határoznia a keresés kiinduló helyzetét is.

12345678910111213 Sub ReplaceExample_4 ()MsgBox Replace ("ABcABCABc", "ABc", "12")'Az eredmény: "12ABC12"MsgBox Replace ("ABcABCABc", "ABc", "12",,, vbTextCompare)"Az eredmény:" 121212 "'A vbTextCompare használatakor hozzá kell adnunk a másik két opcionális argumentumot:'kezdd és számoldMsgBox Replace ("ABcABCABcABc", "ABc", "12", 3, 1)'Az eredmény: "cABC12ABc"„A 3. pozícióból indult, és csak egyszer cserélte le az ABC -t.End Sub

A kis- és nagybetűk megkülönböztetés nélküli cseréjét is elvégezheti, ha hozzáadja a Option Compare Text lehetőséget a modul tetejéhez:

1 Opció Szöveg összehasonlítása

VBA Cserélje ki a kettős idézeteket

A VBA Replace funkció helyettesítheti a karakterlánc elejének és végének határolására használt idézőjeleket.

A VBA Chr függvény visszaadhat egy karaktert a karakterkészlet számából.

1 MsgBox Chr (34) "Az eredmény:"

Vagy

1 MsgBox Chr (64) 'Az eredmény: @

Dupla idézőjelek használhatók a VBA Replace funkcióban a „” ”” vagy a VBA Chr (34) függvénnyel.

12345678910111213 Sub ReplaceExample_5 ()Dim StrEx karakterlánckéntStrEx = "AB" "AB" ""Az MsgBox StrEx eredménye: AB "AB"MsgBox csere (StrEx, Chr (34), "12")'Az eredmény: AB12AB12MsgBox Replace (StrEx, "" "", "DQ")'Az eredmény: "ABDQABDQ"End Sub

VBA A törésvonal cseréje a cellában

A VBA Replace funkció megkeresi a törésvonal speciális karakterét egy cellában, és eltávolítja azt, vagy helyettesíti egy szóközzel. A törésvonal speciális karaktere beírható egy cellába az Alt+Enter billentyűparancs segítségével, és használható a VBA kódban a Karakterkészlet számával a Chr VBA függvény használatával (10).

1234567891011121314 Sub ReplaceExample_6 ()Dim StrEx mint karakterlánc 'Határozzon meg egy karakterlánc -változótOlvassa el az A2 cella értékét az 1. munkalaponStrEx = ThisWorkbook.Worksheets ("Sheet1"). Tartomány ("A2"). Érték'Az Alt+Enter billentyűkkel beírt törésvonal karakter Chr (10) és láthatatlan.'Ez a kódsor szóközzel helyettesíti ezt a karaktertStrEx = Csere (StrEx, Chr (10), "")'Írja be a kicserélt értéket az 1. munkalap B2 cellájábaThisWorkbook.Worksheets ("Sheet1"). Tartomány ("B2"). Érték = StrExEnd Sub

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave