Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1188to1192
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

AutoFilter - Kriterium nicht vorhanden

AutoFilter - Kriterium nicht vorhanden
Judith
Hallo!
Habe eine Frage bezüglich dem AutoFilter.
Habe eine Liste die mittels AutoFilter gefiltert wird, der AutoFilter wird über VBA definiert, und soll immer nach den gleichen Kriterien (aktiv oder beendet) filtern. Die gefilterten Daten werden dann automatisch in eine andere Tabelle kopiert. Nur kann es jetzt sein, dass es zB am Jahresanfang noch kein "beendet" gibt. Der AutoFilter filtert zwar nach "beendet", und es werden auch keine Datensätze angezeigt, jedoch kopiert er trotzdem alle Datensätze weiter (auch die aktiven, und die "Leeren") - was er aber nicht soll.
Vielleicht kann mir jemand von euch helfen, wie ich dieses Problem umgehn bzw. lösen kann...
Danke im Voraus!
Lg Judith

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: AutoFilter - Kriterium nicht vorhanden
22.11.2010 10:47:15
Renee
Hi Judith,
Dazu müsst frau mal den Code sehen ;-)
Grundsätzlich könntest du in Makro (z.B. für Spalte A) mit
If WorksheetFunction.Subtotal(3,Activesheet.Range("A:A")) = 1 Then
Msgbox "Nur Titel angezeigt"
Else
Msgbox "Hier kopieren"
End If 

testen, ob der Filter nur noch den Titel anzeigt oder >1 Datensätze angezeigt werden.
GreetZ Renée
AW: AutoFilter - Kriterium nicht vorhanden
22.11.2010 11:11:47
Judith
Also hier mal der Code:
Sheets("Verkäufe Eingabe").Select
Selection.AutoFilter Field:=36, Criteria1:="2010"
Selection.AutoFilter Field:=60, Criteria1:="abgeschlossen"
Range("A2:BI202").Select
Selection.Copy
Sheets("Statusvv 2010").Select
Range("A1").Select
ActiveSheet.Paste
Sheets("Verkäufe Eingabe").Select
Selection.AutoFilter Field:=36, Criteria1:="2010"
Selection.AutoFilter Field:=60, Criteria1:="aktiv"
Range("A3:BI103").Select
Selection.Copy
Sheets("Statusvv 2010").Select
Range("A205").Select
ActiveSheet.Paste
Ok, also der Code ist jetzt ein bisschen primitiv eingefügt bzw nicht so schön umformatiert wie deiner, aber lesen kann man ihn ja ;)
Also es wird eben im Makro nach (aktiv, abgeschlossen) gefiltert (zusätzlich noch nach dem Jahr - wobei das Jahr immer eingetragen ist, also sollte dies denke ich mal nichts mit dem anderen zu tun haben?...)
Lg Judith
Anzeige
Die Logik des Codes ist für mich nicht
22.11.2010 11:38:37
Renee
nachvollziehbar, Judith.
1. Ist das Jahr wirklich statisch auf 2010 beschränkt? Steht das Jahr sonst irgendwo in einer Zelle?
2. Heisst das Zielblatt immer "Statusvv 2010", oder ändert das im nächstes Jahr?
3. Ist das Ziel der Kopie immer auf Zelle A1 wenn nach "abgeschlossen" gefiltert?
4. Ist das Ziel der Kopie immer auf Zelle A205, wenn nach "aktiv" gefiltert?
5. "beendet" oder "abgeschlossen"? Problem bei 0 Datensätze unabhängig vom Filterwert?
6. Kannst du eine anonymisierte Beispielmappe laden, die dein Problem genau umschreibt?
Der ganze Code sieht nach Makrorekorder aus, denn auf die VBA-Befehle .Activate und .Select kann in den häufigsten Fällen verzichtet werden.
GreetZ Renée
Anzeige
AW: Die Logik des Codes ist für mich nicht
24.11.2010 12:09:50
Judith
Hallo,
ja is alles etwas kompliziert durchdacht, das Makro ist nämlich in Wirklichkeit noch viel viel viel viel länger und wsl sehr kompliziert aufgebaut (ich denke komplizierter als nötig...)
Hab jetzt aber eine andere Lösung für mein Problem gefunden und es funktioniert jetzt so wie ich das will :)
Trotzdem danke für dein Bemühen! :)
Lg Judith

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige