Autor: Peter Haserodt  --- Aus Excel VBA - Gruppe: Funktionen

Replace - Substitute

Autor: Peter Haserodt - Erstellt: --      - Letzte Revision: --
Replace ab E2000 (VBA 6) / WorksheetFunction.Substitute ab E97

Replace ist eine sehr nützliche Funktion, um innerhalb einer Zeichenkette etwas auszutauschen.
Tatsächlich kennt Excel-VBA eine Art Replace auch schon in VBA 5 also E97.
Diese kann man über Worksheetfunction.Substitute erreichen.

Der Nachteil der Substitute ist die begrenzte Zeichenkettenlänge.
D.h. ab einer gewissen Anzahl von Zeichen mag die Substitute nicht mehr (ich denke ab 8192 Zeichen)

Aber schauen wir uns die Grundstrukturen an:
Bei beiden sind die Argumente gleich:
Text - zu ersetzender Text - ersetzender Text.

Die Beispiele geben mehr Aufschluss:



' **************************************************************
'  Modul:  Modul1  Typ = Allgemeines Modul
' **************************************************************

Option Explicit
	
Public Sub SubstituteTest()
	Dim sText As String
	sText = "Dxxxxxes xxxxxst exxxxxn komxxxxxscher Text"
	MsgBox sText
	MsgBox WorksheetFunction.Substitute(sText, "xxxxx", "i")
End Sub
	
Public Sub ReplaceTest()
	'Ab E2000 VBA 6
	Dim sText As String
	sText = "Dxxxxxes xxxxxst exxxxxn komxxxxxscher Text"
	MsgBox sText
	MsgBox Replace(sText, "xxxxx", "i")
End Sub

Jeder der denkt, dass die Funktionen gleichwertig seien, sei nochmals darauf hingewiesen, dass dem nicht so ist!!!
Substitute ist beschränkt!!!

Weitere Artikel der Gruppe: Funktionen Aus Excel VBA
Nach oben