Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Sprungmarke setzen

Betrifft: Sprungmarke setzen von: Peter
Geschrieben am: 25.10.2020 15:06:58

Hallo,
ich habe folgenden Code in einem Makro:

        'Anfang Durchführung der Änderung
      For Each xRange In wrdDoc.StoryRanges
        For Each xFiled In xRange.Fields
          With xFiled
            .Select
            
                    'Anfang funktioniert - Auslesen Gesamtcode
                    With WrdApp
                        varTextGesamt = .Selection                                      ' _
TextGesamt mit Klammer links und rechts
                        Debug.Print varTextGesamt
                        
                        varTextGesamt = Right(varTextGesamt, Len(varTextGesamt) - 1)    ' _
TextGesamt ohne Klammer links und mit rechts
                        Debug.Print varTextGesamt
                        
                        Dim varTextTeilLinks As Variant
                        varTextTeilLinks = Left(varTextGesamt, 5)
                        Debug.Print varTextTeilLinks
                        
                        
                        varTextGesamt = Left(varTextGesamt, Len(varTextGesamt) - 1)     ' _
TextGesamt ohne Klammer links und rechts
                        Debug.Print varTextGesamt
                     
                        varTextLeft = Left(varTextGesamt, InStr(varTextGesamt, ".12 ") + 2)  ' _
TextGesamt von Links ohne Klammer bis einschl. .12 ohne Leerzeichen aus
                        Debug.Print varTextLeft 'i.O.
                     
                        varTextRight = Mid(varTextGesamt, InStr(varTextGesamt, "Worddaten!"))    _
 'TextGesamt von Rechts ohne Klammer bis einschl. Worddaten! aus
                        Debug.Print varTextRight
                                            
                            SucheNach = varTextGesamt
                            Debug.Print SucheNach
                            ErsetzeDurch = varTextLeft & " " & aktPfadDatei & " " &  _
varTextRight
                            Debug.Print ErsetzeDurch
    
                                If SucheNach <> ErsetzeDurch Then
                                    MsgBox "Werte nicht identisch - alles umwandeln  _
erforderlich"
                                        WrdApp.Selection.Find.ClearFormatting
                                        WrdApp.Selection.Find.Replacement.ClearFormatting
                                        WrdApp.Selection.Find.Execute FindText:=SucheNach, _
                                                                          ReplaceWith:= _
ErsetzeDurch, _
                                                                          Replace:=2
                                    xFiled.Update
                                Else
                                    MsgBox "Werte sind identisch - keine Umwandlung  _
erforderlich"
                                End If
                    
                     
                    End With
                    'Ende funktioniert - Auslesen Gesamtcode
            
          End With
        Next xFiled
      Next xRange
        'Ende Durchführung der Änderung
    'Ende Prüfung vorhandener Wert
Ich möchte erreichen, dass wenn der Wert von "varTextTeilLinks" <> "LINK" ist, dass dann alles übersprungen wird und Next xFiled ausgeführt wird.

Könnt ihr mir bitte helfen.

Gruss
Peter

Betrifft: AW: Sprungmarke setzen
von: Werner
Geschrieben am: 25.10.2020 16:20:53

Hallo,

weshalb Sprungmarke?
    varTextTeilLinks = Left(varTextGesamt, 5)
    If varTextTeilLinks = "LINK" Then
        'hier Code der ausgeführt werden soll
    End If
Next xFiled
Gruß Werner

Betrifft: AW: Sprungmarke setzen
von: Peter
Geschrieben am: 25.10.2020 16:23:45

Hallo Werner,
besten Dank für Deine Hilfe. Werde es ausprobieren und mich wieder melden.

Gruss
Peter

Betrifft: AW: Sprungmarke setzen
von: Hajo_Zi
Geschrieben am: 26.10.2020 05:44:04

Hallo Peter,
offen bedeutet es soll noch eine Antwort kommen.
Warum ist dein Beitrag Offen.
Du willst doch was machen. Soll jemand vorbei kommen?

Das ist nur meine Meinung zu dem Thema.

GrußformelHomepage

Betrifft: AW: Sprungmarke setzen
von: Peter
Geschrieben am: 26.10.2020 11:19:52

Hallo Werner,
nochmals besten Dank für Deine Hilfe.

Leider steckten in meinem Code noch einige Fehler. Grundsätzlich läuft das jetzt.

Ich habe aber noch eine kleine Bitte falls beim Auslesen des "varTextTeilLinks" ein Fehler vorhanden ist:

"If varTextTeilLinks = "LINK" Then"

Wenn der varTextTeilLinks nur z.B. " LI" ausliest, dann soll dies ebenfalls richtig gelten.

Da gibt es doch eine Möglichkeit, dass nicht nur "LINK" sondern irgendwie *"LI"* gültig ist.

Kannst Du mir hierbei bitte noch helfen.

Gruss
Peter

Betrifft: AW: Sprungmarke setzen
von: Daniel
Geschrieben am: 26.10.2020 11:42:45

HI
das wäre dann ja quasi: wenn varTextTeilLink enthält "LI"

da gibt's in VBA mehrere Wege
hier mal 2 davon:
IF Instr(varTextTeilLink, "LI") > 0 Then
IF varTextTeilLink Like "*LI*" Then
Gruß Daniel

Betrifft: AW: Sprungmarke setzen
von: Peter
Geschrieben am: 26.10.2020 11:47:00

Hallo Daniel,
besten Dank

Gruss
Peter

Beiträge aus dem Excel-Forum zum Thema "Sprungmarke setzen"