Office: (Office 365) VBA Makro abbrechen durch Inputbox

Helfe beim Thema VBA Makro abbrechen durch Inputbox in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, dank Gerhard H aus diesem Forum habe ich das folgende Makro im Einsatz, bei dem eine Spalte einer Tabelle in Word auf einen vom... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von luftgetrocknet, 8. Juni 2021.

  1. VBA Makro abbrechen durch Inputbox


    Hallo zusammen,

    dank Gerhard H aus diesem Forum habe ich das folgende Makro im Einsatz, bei dem eine Spalte einer Tabelle in Word auf einen vom Anwender eingegebenen Begriff durchsucht wird und alle Zeile, die diesen Begriff nicht enthalten, gelöscht werden (bis auf die Überschriftenzeile):

    Sub Tabelle_Filtern()
    Dim tabelle As Table
    Dim suchbegriff As String
    Dim i As Long, anzZeilen As Long

    Set tabelle = Selection.Tables(1)
    anzZeilen = tabelle.Rows.Count
    suchbegriff = InputBox("Wonach soll gesucht werden?", "Tabelle filtern")
    Application.UndoRecord.StartCustomRecord ("Tabelle_filtern")

    For i = anzZeilen To 2 Step -1
    If Not tabelle.Rows(i).Cells(2).Range.Text Like "*" & suchbegriff & "*" Then tabelle.Rows(i).Delete
    Next i

    'MsgBox "Filtern nach " & suchbegriff & " beendet. Zum Widerherstellen der Tabelle benutzen Sie die Rückgängig-Funktion."
    Application.UndoRecord.EndCustomRecord
    End Sub


    Funktioniert grundsätzlich super, nur das Abbrechen über die Inputbox funktioniert leider nicht:

    Die Inputbox ist mit einer Abbrechen-Schaltfläche versehen. Klickt man diese an, läuft das Makro trotzdem durch bis die MsgBox sagt, dass das Filtern beendet ist. Tatsächlich wird dabei nichts gefiltert, so dass man grundsätzlich damit leben kann, nur dauert der Makrodurchlauf aufgrund der Größe der Tabelle einige Zeit, in der sich der Anwender fragt, warum Word auf seine weiteren Aktionen nicht reagiert, so dass es schöner wäre, wenn das Makro tatsächlich abgebrochen werden würde, wenn man die entsprechende Schaltfläche betätigt. Hat jemand einen Tipp?

    Bei dieser Gelegenheit noch eine Frage:

    Nutze ich nach dem Makrodurchlauf die Rückgängig-Funktion, wird die Tabelle korrekt wiederhergestellt, allerdings wird dann irgendwo in der Mitte oder am Ende der Tabelle eine Zeile angesprungen. Kann man dem Makro irgendwie begreiflich machen, dass nach der Rückgängig-Funktion der Cursor an den Dokumentanfang springen soll. Ich hab das schon mit Textmarke versucht. Wo auch immer ich den Code in das Marko geschrieben habe, hatte es leider keine Auswirkungen.

    Vielen Dank und schöne Grüße

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

    Das Makro abwürgen, wenn der Anwender auf Abbrechen oder das Schließkreuz der Inputbox klickt, kannst du so:
    suchbegriff = InputBox("Wonach soll gesucht werden?", "Tabelle filtern")
    If suchbegriff = vbNullString Then
    MsgBox "Abbruch"
    Exit Sub
    End If

    Was das Selektieren nach Betätigen der UnDo-Funktion betrifft: Da diese ja nach Makro-Ablauf manuell betätigt wird, hast du vom Makro aus keinen Zugriff darauf. Kurz: Dafür hab ich keine Lösung.
     
    Gerhard H, 8. Juni 2021
    #2
  3. Hallo Gerhard,

    herzlichen Dank für die Hilfe zum Makro-Abbruch. Funktioniert prima und ist auch viel wichtiger als der Sprung nach dem Rückgängigmachen.

    Viele Grüße

    Luftgetrocknet
     
    luftgetrocknet, 8. Juni 2021
    #3
Thema:

VBA Makro abbrechen durch Inputbox

Die Seite wird geladen...
  1. VBA Makro abbrechen durch Inputbox - Similar Threads - VBA Makro abbrechen

  2. VBA Spalten aus- und einblenden trotz Blattschutz

    in Microsoft Excel Hilfe
    VBA Spalten aus- und einblenden trotz Blattschutz: Guten Tag Ich habe eine Übersicht, in dem die Urlaubszeiträume meiner Kollegen eingetragen werden sollen. Neben Namen, Vornamen und Zeitraum sollen noch weitere spezifische Daten eingetragen...
  3. Outlook Termineinladung an festen Kontakt

    in Microsoft Outlook Hilfe
    Outlook Termineinladung an festen Kontakt: Hallo zusammen, ich muss einen bestimmten Kontakt häufig zu einem Termin einladen und würde mir gerne ein paar Klicks sparen. Kann man eine Art Schnellsprung oder vielleicht ein Makro erstellen,...
  4. Blattschutz VBA mit PW und Bedingungen

    in Microsoft Excel Hilfe
    Blattschutz VBA mit PW und Bedingungen: Hallo VBA'ler Kenne mich nicht wirklich mit VBA aus, habe es aber geschafft, eine mit PW geschützte Tabelle via Button zu entsperren und wieder zu sperren. Der Button dient dazu, die gesetzten...
  5. Makro Problem nach Wörtern filtern und Zeilen löschen

    in Microsoft Excel Hilfe
    Makro Problem nach Wörtern filtern und Zeilen löschen: Hallo zusammen! Ich habe ein Makro, dass ich erweitern möchte. Dabei soll in den Daten in der ersten Zeile ein Filter aktiviert werden und alle Datenzeilen löschen, die in Spalte 10 eines von 4...
  6. User Defined Functions (UDF) auch ohne VBA / Makro möglich ?

    in Microsoft Excel Hilfe
    User Defined Functions (UDF) auch ohne VBA / Makro möglich ?: Moin, Ich hab ne ganz einfache Frage, die sich wohl direkt mit Ja oder Nein beantworten läßt. Meine Tabelle ist 450 Zeilen hoch und 365 Spalten breit. *eek.gif* In jeder Zelle ist die gleiche...
  7. per Makro VBA csv durchsuchen und Tabellen anlegen

    in Microsoft Excel Hilfe
    per Makro VBA csv durchsuchen und Tabellen anlegen: Hallo Liebes MS Office Forum Gemeinde, vor ab finde ich super das es eine Plattform gibt um mit anderen Personen Themen über MS Office Probleme, Lösungen Ansätze zu teilen. VBA ist für mich...
  8. Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen

    in Microsoft Excel Hilfe
    Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen: Hallo, leider kann ich maximal Makros aufzeichnen. Damit komme ich bei meinem jetzigen Problem allerdings nicht weiter. Problem: Monatlich soll ein Auszug von Daten aus einer Quelldatei die ich...
  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