Einzelnen Beitrag anzeigen
Alt 13.09.2017, 16:02   #1
Rob15k
Neuer Benutzer
Neuer Benutzer
Standard VBA Anzeigen ob AutoFilter in Worksheets etwas gefunden hat

Hi Community,

ich verwende aktuell folgenden Code um in 8 Worksheets einen Filter in Spalte 11 anzuwenden.
Code:

Sub FilterSetzen()
   Dim ws As Worksheet
   Dim belegnr As String
   
   belegnr = InputBox("Belegnummer:", "Belegnummer eingeben")
    If belegnr = "" Then
        Exit Sub
    Else
        For Each ws In Worksheets
            If ws.AutoFilterMode Then
                If ws.FilterMode Then ws.ShowAllData
            Else
                ws.UsedRange.AutoFilter
            End If
                
                ws.UsedRange.AutoFilter Field:=11, Criteria1:=belegnr
        Next
    End If
End Sub
Allerdings findet der Filter nicht immer in jedem Sheet etwas was auch vollkommen in Ordnung ist. Es kann nämlich sein dass die Belegnummer nur in einem oder auch in mehrere Sheets vorhanden ist.
Die erste Zeile ist die Zeile mit der Spaltenbeschriftung ab der zweiten Zeile fangen die Datensätze an, findet der Filter in einem Worksheet nichts springt der ans Ende der Tabelle und wenn der letzte Datensatz in Zeile 199 ist zeigt Excel die Zeilen 1 und als nächstes die Zeile 200 an.
Jedes Worksheet hat unterschiedlich viele Datensätze
Damit ich jetzt nicht jedes Sheet durchklicken muss wollte ich versuchen das mir VBA entweder in einer MsgBox anzeigt in welchem Sheet was gefunden wurde oder es mir irgendwie erkenntlich macht zB durch einfärben des Registers etc...
Leider finde ich kein Weg um das so umzusetzen habt ihr evtl eine Idee oder Lösung parat?


Ich benutze Excel 2010

Vielen Dank im Vorraus
Rob15k ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten