Anzeige

Am Puls von Microsoft

Anzeige

Frage .NET in WORD VBA einbinden

Puttes

bekommt Übersicht
Hallo Ihr Lieben,
ich versuche ein VBA Makro zu schreiben in dem aus einem Text verschieden Zeichen eliminiert werden sollen und das Zeichen dahinter soll um ein Zeichen aufgerückt werden.
Beisp.: Dieser Text ist dooof! und falsch.
Hier soll das ! entfernt werden und das folgende u mit allen dahinter stehenden Zeichen aufrücken.
Beisp.: Dieser Text ist dooof und falsch.
Soviel zur Ausgangslage. Ich habe nun gelesen das das .NET Framework eine Funktion zur Verfügung stellt mit der man Zeichen in einem Text eliminieren kann. Diese soll heißen RegularExpressions mit der man eine Vorgabe von Zeichen alle Zeichen aus einem String entfernt werden können.
Ich habe nun auf meinem Rechner nachgesehen das NET vorhanden ist festgestellt das eine App mit Namen Microsoft .NET SDK 7.0101 (x64) gelistet wird.
Was muss ich also machen das die Möglichkeit von Replace angewendet werden kann. Wie kann ich dieses .NET in mein Makro einbinden? Gibt es dafür eine einfache Lösung und wo kann man nachlesen welche Möglichkeit sich in diesem .NET sonst noch verbirgt?
Ich bin für jeden Hinweis dankbar und träume den alten zeiten nach in denen es noch Cobol, Algol und Fortran sowie Assembler auf einem TR440 gab (also wisst ihr nun das ich ein alter Sack bin!)
Danke für Eure Mühe und Gruß aus Berlin
Wolfgang
 
Anzeige
RegularExpressions, kurz RegEx oder RegExp, geht auch in VBA. Einfach mal nach "VBA RegEx" googeln.

Beispiel:
Code:
Option Explicit

Const S = "Beispiel: Samstag 123. irgendwas anderes."

Public Sub Positive_Lookahead_Assertion()
        Dim Regex As Object
        Dim M As Object
        Set Regex = CreateObject("vbScript.Regexp") 'Samstag vor " 123" kann ich finden.
        .Pattern = "S[a-z]+(?= [0-9]+)"
        .Global = True
        Set M = .Execute(S)
        MsgBox M(0) & " gefunden"
    End With
End Sub

vbscript_regexp.PNG
 
Zuletzt bearbeitet:
Lieber IngoBingo und Mumpel, rechte herzlichen dank für Eure Hilfe.
Es erfreut mich sehr das man einem alten Sack hilft.
Danke aus dem Berliner Umland
Wolfgang
 
Anzeige
Oben