Tabellen Auszüge nach Bedingungen kopieren
#11
Hi



das Makro kopiert die durch Autofilter gefilterten Werte in die Tabellenblätter 2,3 und 4. Ich hatte das so verstanden. Alles in ein Tabellenblatt zu kopieren erfordert es dann zusätzlich freien Platz zu errechnen. 



Eine normale Autofilterlösung sollte es doch eigentlich auch tun? Anbei ein Beispiel, mehrmaliges Drücken des Button ändert den Filter


Angehängte Dateien
.xlsm   Autofilter1.xlsm (Größe: 20,75 KB / Downloads: 4)
Top
#12
(24.05.2015, 18:36)Winny schrieb: Hi



das Makro kopiert die durch Autofilter gefilterten Werte in die Tabellenblätter 2,3 und 4. Ich hatte das so verstanden. Alles in ein Tabellenblatt zu kopieren erfordert es dann zusätzlich freien Platz zu errechnen. 



Eine normale Autofilterlösung sollte es doch eigentlich auch tun? Anbei ein Beispiel, mehrmaliges Drücken des Button ändert den Filter

JA
es sollte die gefilterte Werte in das Tabellenblatt 5 als Tabelle einfügen.
Nur das tu es nicht, es filter nur, ich sehe nur noch zeile 1 und ab zeile 16, dazwischen nix.
Top
#13
ich sagte ja dass das zusätzlicher Aufwand ist, zur angehängten Lösung hast Du dich aber gar nicht geäussert
Top
#14
Doch habe ich

"Nur das tu es nicht, es filter nur, ich sehe nur noch zeile 1 und ab zeile 16, dazwischen nix."

Es ändert nur die Filter "ich sehe nur noch zeile 1 und ab zeile 16, dazwischen nix."
Top
#15
die angehängte Datei aus #11 funktioniert tadellos!
Top
#16
(24.05.2015, 19:11)Winny schrieb: die angehängte Datei aus #11 funktioniert tadellos!

Hi Winny,

bei mir wird leider nicht gefiltert. Das schrieb der TE:
Zitat:Es ändert nur die Filter "ich sehe nur noch zeile 1 und ab zeile 16, dazwischen nix."


Dasselbe Phänomen kann ich auch bei mir beobachten. Es werden nur die gesetzten Filter, nicht jedoch die Filterergebnisse angezeigt. Nach erstem Druck auf den Button habe ich diese Filterstellung:

   

2. Klick

   

3. Klick

   
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#17
Hallo,

so sollte es klappen:

Code:
Dim Counter As Integer

Sub tst()
   Application.ScreenUpdating = False
   Select Case Counter
   Case 0: Worksheets("Tabelle1").AutoFilterMode = False: Counter = Counter + 1
   Case 1: Call Fehler: Counter = Counter + 1
   Case 2: Call Email: Counter = Counter + 1
   Case 3: Call Fax: Counter = Counter + 1
   End Select
   If Counter > 3 Then Counter = 0
   'Application.CutCopyMode = False
   'Worksheets("Tabelle1").AutoFilterMode = False
  
   Application.ScreenUpdating = True
End Sub

Sub Fehler()
   'Worksheets("Tabelle2").Cells.ClearContents
   With Worksheets("Tabelle1")
      .AutoFilterMode = False
      .Range("A:F").AutoFilter Field:=1, Criteria1:="<>Call"
      .Range("A:F").AutoFilter Field:=3, Criteria1:="="
      .Range("A:F").AutoFilter Field:=4, Criteria1:="=" & True
      '.AutoFilter.Range.Copy
      'With Worksheets("Tabelle2")
      '   .Paste Destination:=.Cells(1, 1)
      'End With
   End With
End Sub

Sub Email()
   Worksheets("Tabelle2").Cells.ClearContents
   With Worksheets("Tabelle1")
      .AutoFilterMode = False
      .Range("A:F").AutoFilter Field:=1, Criteria1:="<>Call"
      .Range("A:F").AutoFilter Field:=3, Criteria1:=">0"
      .Range("A:F").AutoFilter Field:=4, Criteria1:="=" & True
      .Range("A:F").AutoFilter Field:=6, Criteria1:="=" & True
'      .AutoFilter.Range.Copy
'      With Worksheets("Tabelle2")
'         .Paste Destination:=.Cells(1, 1)
'      End With
   End With
End Sub

Sub Fax()
   Worksheets("Tabelle3").Cells.ClearContents
   With Worksheets("Tabelle1")
      .AutoFilterMode = False
      .Range("A:F").AutoFilter Field:=1, Criteria1:="<>Call"
      .Range("A:F").AutoFilter Field:=3, Criteria1:=">0"
      .Range("A:F").AutoFilter Field:=4, Criteria1:="=" & True
      .Range("A:F").AutoFilter Field:=5, Criteria1:="=" & True
'      .AutoFilter.Range.Copy
'      With Worksheets("Tabelle3")
'         .Paste Destination:=.Cells(1, 1)
'      End With
   End With
End Sub

Gruß Uwe
Top
#18
Hi

das ist sehr seltsam. Ich benutze hier zu Hause Excel2007

@Uwe: genau deine Lösung führt bei mir zu dem von TE + Günter beschriebenem Verhalten. Dasselbe passierte vorher als ich Criteria1:="=WAHR" da stehen hatte

@Günther: Was passiert wenn du in den Filter reingehst, aber nichts veränderst sondern nur mit OK bestätigst?

Edit: was passiert beim 4.Klick? Der Filter sollte dann aus sein?
Top
#19
Hi Winny, hi Uwe,

zu allererst:

Uwe, dein Code führt zum gewünschten Erfolg - die Filterergebnisse werden einwandfrei angezeigt.

Zu deinen Fragen, Winny. 

Zur ersten: es passiert einfach nichts - die Filtersetzungen bleiben, Ergebnisse werden nicht angezeigt.
Zur zweiten: Der 4. Klick hebt, ganz wie der Code es anweist, die Filter auf - die gesamte Liste ist wieder sichtbar.

Nachtrag:

Winny, auf deinen Hinweis, dass es bei dir unter XL 2007 läuft, habe ich beide Makros sowohl auf 2013 als auch auf 2007 getestet - und jetzt das Phänomen:

Unter XL2007 läuft Winnys Code, nicht aber unter XL2013. Uwes Makro bewirkt gerade das Gegenteil - einwandfreier Lauf unter 2013, aber kein Erfolg unter 2007.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#20
Hallo Zusammen,

ich hab es jetzt mit 2003 getestet. Da verhält es sich so wie bei 2007.
Also hat sich ab 2010 was geändert - toll! :(

Gruß Uwe
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste