29.06.2016, 18:47
Hallo liebes Forum,
ich habe bei einem String eine Positionsangabe vorgegeben.
Wie in folgendem Code:
Die Positionsangabe ist hier mit vbPos = 14 angegeben. Das ist mitten in dem Wort "wunderbar". Jetzt möchte ich, die Position des ersten Leerzeichens links und rechts von diesem Wort bestimmen,
z.B. um über die Funktion Mid(vbSatz, vbPosLinks + 1, vbPosRechts - vbPosLinks) das Wort "wunderbar" selbst zu ermitteln. Klappt ja auch im obigen Beispiel. Kann man so etwas nicht
wesentlich besser lösen als mit 2 while Schleifen?
ich habe bei einem String eine Positionsangabe vorgegeben.
Wie in folgendem Code:
Code:
Sub Wort_durch_Leerzeichen_ersetzen()
Dim vbSatz, vbErsatz, vbPos,vbPosR, vbPosL
vbPos = 14
vbSatz = "Heute ist wunderbares Wetter und ich gehe zum Strand."
vbPosL = vbPos
While Not Mid(vbSatz, vbPosL, 1) = " "
vbPosL = vbPosL - 1
Wend
Debug.Print "Leerzeichen links bei Position: " & vbPosL
vbPosR = vbPos
While Not Mid(vbSatz, vbPosR, 1) = " "
vbPosR = vbPosR + 1
Wend
Debug.Print "Leerzeichen rechts bei Position: " & vbPosR
End Sub
Die Positionsangabe ist hier mit vbPos = 14 angegeben. Das ist mitten in dem Wort "wunderbar". Jetzt möchte ich, die Position des ersten Leerzeichens links und rechts von diesem Wort bestimmen,
z.B. um über die Funktion Mid(vbSatz, vbPosLinks + 1, vbPosRechts - vbPosLinks) das Wort "wunderbar" selbst zu ermitteln. Klappt ja auch im obigen Beispiel. Kann man so etwas nicht
wesentlich besser lösen als mit 2 while Schleifen?