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. Speichern mit dem Titel der Zelle A2

    in Microsoft Excel Hilfe
    Speichern mit dem Titel der Zelle A2: Moin moin, Ich habe per Makro einen Arbeitsablauf aufgezeichnet der soweit auch funktioniert. Dieser Endet jedoch im "Speichern Unter" Fenster, welches durch das Klicken von "Drucken als PDF"...
  3. Datentabelle per VBA Makro durch Kopieren und Einfügen einer Kopfzeile aufteilen

    in Microsoft Excel Hilfe
    Datentabelle per VBA Makro durch Kopieren und Einfügen einer Kopfzeile aufteilen: Hallo Zusammen, mein erster Beitrag hier, also schon mal Sorry im Voraus, wenn unvollständig beschrieben *:)* Ich habe das Forum schon nach einem brauchbaren Lösungsansatz durchsucht, bin aber...
  4. Makro/VBA Text in Zahl umwandeln

    in Microsoft Excel Hilfe
    Makro/VBA Text in Zahl umwandeln: Hallo liebes Forum, ich habe eine Frage und bin bisher leider nicht so wirklich fündig geworden :oops: Aber ich bin mir sicher, dass ich hier Hilfe bekomme *;)* In meiner Arbeitsdatei sind...
  5. VBA Makro Daten kopieren

    in Microsoft Excel Hilfe
    VBA Makro Daten kopieren: Hi zusammen, ich bräuchte eure Hilfe denn aktuell bin ich am verzweifeln: Ich brauche ein Makro für das deutsche Excel. Es gibt 2 verschiedene Arbeitsmappen mit jeweils einem aktiven...
  6. per VBA Zeile in der Liste löschen

    in Microsoft Excel Hilfe
    per VBA Zeile in der Liste löschen: Hallo Leute, ich brauche eure Hilfe. In einer Liste sollen regelmäßig Einträge vorgenommen werden. Hierzu müssen die Felder Name, Nr. alt, Stück, Bezeichnung, Datum, Kst, Palettennummer,...
  7. Zeilen mit bestimmten Wert in andere Tabelle (VBA Makro)

    in Microsoft Excel Hilfe
    Zeilen mit bestimmten Wert in andere Tabelle (VBA Makro): Hallöchen, ich stehe aktuell vor folgendem Problem: Wir haben ein Excel Makro, das über die Zeiterfassung alle Mitarbeiter und ihre Stunden in verschiedenen Positionen auflistet. Eine abgespeckte...
  8. Per Makro bestimmten Bereich per PDF unter bestimmten Pfad speichern.

    in Microsoft Excel Hilfe
    Per Makro bestimmten Bereich per PDF unter bestimmten Pfad speichern.: Moin Zusammen, ich hoffe Ihr könnt mir helfen, denn ich verzweifle so langsam :( Ich habe bereits hier und im Internet gefühlt vieles durchgelesen, komme aber leider nicht weiter. 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