Office: (Office 365) Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken

Helfe beim Thema Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe folgenden Code erstellt, um das immer wieder in meinen Feldfunktionen auftauchende \*Mergeformat zu entfernen, da es die... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von luftgetrocknet, 8. Juni 2021.

  1. Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken


    Hallo zusammen,

    ich habe folgenden Code erstellt, um das immer wieder in meinen Feldfunktionen auftauchende \*Mergeformat zu entfernen, da es die Formatierung zerschießt:

    ActiveWindow.View.ShowFieldCodes = Not ActiveWindow.View.ShowFieldCodes
    Selection.WholeStory
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find

    .Text = "\* MERGEFORMAT"
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindAsk
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    ActiveWindow.View.ShowFieldCodes = Not ActiveWindow.View.ShowFieldCodes


    Funktioniert zwar, aber am Ende kommt immer die nervige Windows-Nachfrage:

    Es wurden 2 Ersetzungen vorgenommen.
    Möchten Sie den Suchvorgang am Anfang fortsetzen?
    Schaltflächen: Ja Nein


    Kann ich diese Abfrage irgendwie unterdrücken? Die Antwort soll immer "Nein" sein.

    Danke und Gruß

    luftgetrocknet
     
    luftgetrocknet, 8. Juni 2021
    #1
  2. Gerhard H Erfahrener User
    Hallo luft,

    das hast du doch hier
    .Wrap = wdFindAsk
    selbst bestellt. Lass das weg.

    Vielleicht ist es ganz nützlich, sich die Parameter des Find-Objekts anzusehen, bevor man es anwendet, z.B. hier:Find-Objekt (Word)

    Was mich interessieren würde: Was bedeutet "zerschießt" für dich? Eine beliebte, aber nichtssagende Metapher. Es wundert mich, denn mergeformat dient doch gerade dazu, die Formatierung beim Aktualisieren beizubehalten. Vielleicht gibts eine einfache Lösung, ohne dass nachträglich ein Makro ran muss.
     
    Gerhard H, 8. Juni 2021
    #2
  3. Lieber Gerhard H,

    ich danke dir für deine Geduld im Umgang mit dummen Fragen. Du hast natürlich Recht! Dennoch kann ich dir versichern, dass ich im Vorfeld versucht habe, etwas herauszufinden, auch über die Microsoft-Seite. Leider ist es für mich schwierig, da ich noch nicht einmal auf die Idee gekommen bin, dass ich im Find-Objekt nachgucken muss. Und selbst nach dem Lesen der von dir verlinkten Seite wäre mir bzgl. meines Problems immer noch kein Licht aufgegangen. Aber durch deinen Hinweis habe ich jetzt schon wieder ein bisschen mehr verstanden und hoffe beim nächsten Mal erfolgreicher zu sein Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken *;)*

    Das mergeformat-Problem stellt sich wie folgt dar:

    In der ersten Spalte meiner Tabelle (s. Anlage) wird die Tätigkeitsbeschreibung mit INCLUDETEXT aus einer anderen Datei geholt. Wenn ich da mergeformat drin lasse, passiert es manchmal (nicht immer), dass die Formatierung aus der Originaldatei nicht übernommen wird. Lösche ich dann das mergeformat und aktualisiere erneut, stimmt es wieder. Deshalb bin ich bei der Aktualisierung dazu übergegangen, vorher in allen Feldern das mergeformat zu entfernen. Denn mit dem einmaligen Löschen ist es nicht getan. Sobald ich in einer Zeile die Formatierung anpasse, auch wenn ich dies nur in den Spalten 2 oder 3 mache, wird in Spalte 1 das mergeformat wieder hinzugefügt. Warum das passiert weiß ich auch nicht.

    Für einen Tipp zu einer schlankeren Vorgehensweise wäre ich dankbar.

    Viele Grüße

    luftgetrocknet
     
    luftgetrocknet, 9. Juni 2021
    #3
  4. Gerhard H Erfahrener User

    Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken

    Hallo Luft,

    ich geb zu, dass die Microsoft-Hilfetexte für Neueinsteiger sich oft kryptisch und sehr komprimiert anfühlen. Aber meistens hast du Glück im Netz und ein anderer freundlicher Mensch erklärt die Sache ausführlicher.

    Wenn du nicht direkt mit dem Begriff fündig wirst, ist die Regel so:
    wo ein Punkt vor dem Begriff steht ( z.B. .Wrap), findest du irgendwo oben drüber im Code das zugehörige Objekt in einer With-Anweisung:

    With Activedocument.Range.Find

    Das letztere (Find) ist dasjenige Objekt, von dem Wrap eine Eigenschaft oder Methode ist. und schon weißt du, wo du suchen musst. Nämlich: Wovon ist .find eine Methode oder Eigenschaft?

    Zum mergeformat-Schalter

    Wenn ich das IncludeText-Feld händisch erstelle (mittels F9) wird kein mergeformat reingeschrieben.
    Erstelle ich es per Registerkarte Einfügen-Feld, findet sich dort im Dialogfeld eine Option: Formatierung bei Aktualisierung beibehalten. Die ist dann dran schuld.
     
    Gerhard H, 9. Juni 2021
    #4
  5. Hallo Gerhard,

    vielen Dank für deine Hinweise!

    Gruß luftgetrocknet
     
    luftgetrocknet, 9. Juni 2021
    #5
Thema:

Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken

Die Seite wird geladen...
  1. Suchen/Ersetzen mit VBA: Windows-Nachfrage unterdrücken - Similar Threads - Ersetzen VBA Nachfrage

  2. Bilder ersetzen mittels vba

    in Microsoft Excel Hilfe
    Bilder ersetzen mittels vba: Hallo! Da ich im Umgang mit VBA ein Laie bin hoffe bzw. Bitte ich Euch mir zu helfen... Folgendes Anliegen hätte ich: Ich bräuchte eine Automatisierung des Arbeitsschrittes "Bild ersetzen". Ich...
  3. Text via VBA in Textdatei (txt) suchen und ersetzen

    in Microsoft Excel Hilfe
    Text via VBA in Textdatei (txt) suchen und ersetzen: Hallo Leute Ich habe hier ein kleines(!) Problem mit mehreren Txt-Dateien. In einem Ordner (fix) sind mehrere Text-Dateien (>150) gespeichert. Diese wurden fehlerhalft erstellt. Sowohl der...
  4. Sonderzeichen per VBA / SQL ersetzen

    in Microsoft Access Hilfe
    Sonderzeichen per VBA / SQL ersetzen: Hallo zusammen, ich müsste Sonderzeichen, z.B. ⅛ per SQL ersetzen. Ich schaffe es aber nicht im VBA Code das Sonderzeichen zu "beschreiben". Aus ⅛ wird beim Einfügen ¨û *eek.gif* Aber damit...
  5. Excel VBA Daten Suchen und Ersetzen

    in Microsoft Excel Hilfe
    Excel VBA Daten Suchen und Ersetzen: Hallo zusammen, zu meinem gesuchten Thema habe ich schon diverse Lösungen gefunden, leider passen die aber nicht auf mein Problem. Dabei ist es sicherlich simpel. Ich habe ich Spalte A, B &...
  6. Per VBA Formel kopieren und Bezug ersetzen

    in Microsoft Excel Hilfe
    Per VBA Formel kopieren und Bezug ersetzen: Hallo zusammen, ich habe da ein etwas verzwicktes Problem, für das ich keine ordentliche Lösung finde. Ich lese aus zwei Blättern Daten in Datenfelder "ProcessOrders" und "Standard". Dabei...
  7. VBA Text innerhalb Tabelle (Spalte 2 - 3 - 4) suchen und ersetzen

    in Microsoft Word Hilfe
    VBA Text innerhalb Tabelle (Spalte 2 - 3 - 4) suchen und ersetzen: Hallo, ich habe in Word eine Tabelle angelegt, die div. Rechnungsdaten enthält. Die Daten werden aus einem anderen System in die Word-Vorlage übergeben. Die Tabelle wird so oft wiederholt,...
  8. Excel VBA Code: Ersetzen von Zeichen nach einer bestimmten Anzahl

    in Microsoft Excel Hilfe
    Excel VBA Code: Ersetzen von Zeichen nach einer bestimmten Anzahl: Hallo, ich habe eine Excel-Liste, die auf der Spalte F mit unterschiedlichen IDs befüllt ist. Die Länge der IDs ist auch unterschiedlich. Ich möchte nun folgendes per VBA Code tun: Ich möchte...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden