@FUM
Danke für den Hinweis, ich habe das korrigiert und noch einen Fehler elimiert: wenn die "Suchen/Ersetzen" - Inhalte unterschiedlich lang sind, funktioniert das bisherige Skript nicht. Das ist jetzt verbessert.
Code: Alles auswählen
Sub repText
Dim mSatz, rSatz, wEins, wZwei as String
Dim mLang, einsLang, k, n As Integer
wEins = " " 'Das erste Auftreten dieses Strings wird gesucht (im Bsp. ein Leerzeichen, kann aber eine beliebigen Zeichenkette sein)
wZwei = Chr(9) 'Der Suchstring wird durch diesen String ersetzt (im Bsp. ein Tabulator, kann aber eine beliebigen Zeichenkette sein)
einsLang = Len(wEins)
' ----------------------------------------------Textmaker aktivieren
Dim tm as Object
Set tm = CreateObject("TextMaker.Application")
tm.Application.Visible = True
tm.Application.WindowState = 3
' -----------------------------------------------Suche in der Markierung das erste Vorkommen von wEins und ersetze es durch wZwei
mSatz = tm.ActiveDocument.Selection.text
mLang = Len(mSatz)
k = InStr(1,mSatz,wEins)
if k Then
n = k + einsLang
rSatz = Left(mSatz,k-1) + wZwei + Mid(mSatz,n)
tm.ActiveDocument.Selection.text = rSatz
Else
MsgBox wEins + " nicht gefunden."
End If
' -----------------------------------------------Textmaker deaktivieren
Set tm = Nothing
End Sub
@Softmaker
Ich wundere mich schon seit langer Zeit, dass in der BasicMaker-Hilfe nichts davon steht, dass es zu "Selection" ein Objekt "text" gibt.
Ich bin vor Jahren durch den Hinweis eines anderen Nutzers darauf gestoßen.