Anzeige
Archiv - Navigation
1872to1876
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Replace

VBA Replace
16.03.2022 17:12:30
Till
Guten Tag!
Ich frage mich gerade, was ich da angestellt habe und ob ich da jetzt nicht doch lieber mal Leute frage, die sich auskennen: Irgendwie muss ich es schaffen, den folgenden String aus einer Variablen herauszubekommen: "(Vergütungsgruppe TX)", wobei das X für unterschiedliche Werte steht (1, 2, 3, 4, 5). Hier meine ganz eigene Lösung, bei der ich befürchte, dass ich mir da doch vielleicht ein Eigentor geschossen habe.

VergV = Replace(VergV, "Vergütungsgruppe", "")
VergV = Replace(VergV, "(", "")
VergV = Replace(VergV, ")", "")
VergV = Replace(VergV, T1", "")
VergV = Replace(VergV, "T2", "")
VergV = Replace(VergV, "T3", "")

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Replace
16.03.2022 17:19:19
onur
?
Was soll jetzt wo ersetzt werden und was soll dann damit passieren?
AW: VBA Replace
16.03.2022 17:28:56
Till
Ich habe damit eigentlich schon das Ziel erreicht und den String "(Vergütungsgruppe TX)" so dann doch noch aus der Variablen herausbekommen. Soweit wäre auch alles in Ordnung, Aber ich befürchte, dass das jetzt einfach nicht sauber programmiert ist und irgendwann zu Problemen führen wird.
AW: VBA Replace
16.03.2022 17:30:21
onur
Aus welcher Variable denn? Was steht denn da drin?
AW: VBA Replace
16.03.2022 17:33:28
Daniel
Hi
Ja, das Eigentor besteht darin, dass du damit auch alle anderen "(" und ")", die im Text noch an anderer Stelle vorkommen können, eleminierst.
Kann man vielleicht machen, wenn man weiß dass es nicht vorkommt, aber ich weiß das nicht.
Ich würde hier die Positionen suchen, und dann den Text entsprechend ausschneiden.
Das ganze in einer Schleife, damit auch mehrfachvirkommen gelöscht werden.

Do
Pos1 = Instr(VergV, "(Vergütungsgruppe T")
If Pos1 = 0 then Exit Do
Pos2 = Instr(Pos1, VergV, ")")
VergV = Left(VergV, Pos1 - 1) & Mid(VergV, Pos2 + 1)
Loop
Gruß Daniel
Anzeige
AW: VBA Replace
16.03.2022 18:23:22
Till
COOL. Das funzt super. Herzlichen Dank für Deine HIlfe!
AW: VBA Replace
16.03.2022 17:25:55
HW89
Hallo Till
Das Replace funktioniert wie folgt: An erster Stelle kommt der String, in dem du Zeichen ersetzten möchtest, also wenn du VergV zugewiesen hast. An zweiter Stelle, welches Zeichen ersetzt werden soll. Und an der dritten Stelle, mit welchem Zeichen du dies ersetzten möchtest.
Hier mal ein kleines Beispiel:

Sub String_Replace
Dim Test_String as String
'Zuweisung
Test_String ="Hallo Welt!"
'Replace Funktion
'Mal angenommen, wir wollen das "Hallo" durch ein "Hello" ersetzten
Test_String = Replace(Test_String,"Hallo","Hello")
'Wenn ich den string jetzt ausgebe, würde dort stehen: "Hello Welt!"
End Sub
Ich hoffe das Hilft dir weiter.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige