Thema Datum  Von Nutzer Rating
Antwort
25.03.2022 15:38:36 Pepi
Solved
26.03.2022 16:44:57 Gast12606
NotSolved
Rot With Selection.Find
27.03.2022 17:05:14 Pepi
NotSolved

Ansicht des Beitrags:
Von:
Pepi
Datum:
27.03.2022 17:05:14
Views:
263
Rating: Antwort:
  Ja
Thema:
With Selection.Find

Danke Gast

Ich habe einen Script gefunden, den ich etwas angepasst habe und der auch supper funktioniert - bis auf den Zähler

Wenn ich den Zähler laufen lasse, wird zwar die korrekte Anzahl "Ersetzt" angegeben, aber nur die letzte "Fundstelle" geändert

Wenn ich die "Do While"-Schlaufe auskommentiere, dann werden alle Fundstellen ersetzt.

Wo liegt denn da der Schatz im Keller?

Sub SU_FindAndReplaceMultiItems()
Dim j%, sMsg$, sOut$, xA, xB, xAnz
sMsg = "SU_FindAndReplaceMultiTems( )" & vbLf & vbLf
    Application.ScreenUpdating = False
    xA = Split("Text;Neu_Kurt;Otto", "_") 'Suchen ersetzen "Text" wird "Neu", "Kurt" wird "Otto"
    ReDim xAnz(UBound(xA))
    
    For j = 0 To UBound(xA)
        xB = Split(xA(j), ";") 'xB(0) = suchen, xB(1) = ersetzen
        With Selection.Find
            .ClearFormatting
            .Replacement.ClearFormatting
            .Text = xB(0) 
            .Replacement.Text = xB(1)
            .Format = False
            .MatchWholeWord = False
'            Do While .Execute '!!!!!!!!!!
'               xAnz(j) = xAnz(j) + 1
'            Loop
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
    Next
    Application.ScreenUpdating = True
    
    ' -----------------------------------------------------------------------------------------
    'Treffer zählen und ausgeben
    For j = 0 To UBound(xAnz)
      If Val(xAnz(j)) > 0 Then
         xB = Split(xA(j), ";")
         sOut = sOut & xAnz(j) & "x " & xB(0) & " > " & xB(1) & vbLf
      End If
    Next j
    If Trim(sOut) <> "" Then MsgBox sMsg & "es wurden ersetzt:" & vbLf & sOut, vbInformation
End Sub

mfg Pepi

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
25.03.2022 15:38:36 Pepi
Solved
26.03.2022 16:44:57 Gast12606
NotSolved
Rot With Selection.Find
27.03.2022 17:05:14 Pepi
NotSolved