Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
788to792
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
788to792
788to792
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spezialfilter mit Makro aktualisieren

Spezialfilter mit Makro aktualisieren
04.08.2006 10:18:15
Stefan
Hallo liebe VBA-Profis,
ich habe ein Problem mit 2 Spezialfiltern:
Über ein Eingabefeld möchte ich dynamisch 2 Spezialfilter steuern. Das Problem ist, dass Excel die Spezialfilter nicht automatisch aktualisiert, wenn sich der Wert im Eingabefeld ändert. Daher habe ich ein Makro aufgezeichnet, das automatisch auf die entsprechenden Blätter geht und da die Spezialfilter aufruft und einfach nochmal laufen lässt. Leider bringt das Makro mein Eingabeblatt durcheinander, und die Bältter mit dem Spezialfilter werden nicht aktualisiert. Der Code des Makros ist:

Private Sub SF
Sheets("Equity Investor").Select
Range("A2:E170").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("F1:F2"), Unique:=False
Sheets("Debt Investor").Select
Range("A2:F170").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("G1:G2"), Unique:=False
End Sub
SF
Es wäre schon super, wenn das Makro macht, was es soll. Was ist hier falsch?
Noch besser wäre es, wenn das Makro automatisch ausgeführt wird, wenn ein neuer Wert in die Eingabezelle eingegeben wird. Weiß jemand wie das funktioniert?
Danke & Gruß,
Stefan

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 10:56:53
Gerd
Hallo Stefan,
Der AdvancedFilter interpretiert die erste Zeile als Überschriftenzeile.
Ändere mal z.B. "A2" auf "A1".
Wenn sich die Eingabezelle ändert, Code ausführen.
Gehe ins Modul, des Tabellenblattes, in der sich diese Zelle befindet,
klicke "Worksheet" dann rechts "Change".
In den Prozedurrumpf schreibst Du
'Beispiel für Eingabezelle
If Target.Address = Cells(2,4).address then
Call Makronamen (=Beispiel)
End If
Das aufzurufende Makro darfst Du dann allerdings nicht
als Private deklarieren.
Gruß
Gerd
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 11:09:07
Stefan
Hallo Gerd,
ich weiß, dass der Advanded Filter die erste Zeile als Überschriftenzeile interpretiert. Deshalb steht da ja auch A2, weil die Überschriften in Zeile 2 stehen... Deshalb funktioniert das Makro immer noch nicht :-(
Was bedeutet denn Cells(2,4)?
Gruß,
Stefan
Anzeige
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 11:53:16
fcs
Hallo Stefan,
das Makro als solches ist ok und funktioniert auch, wenn man das Private wegläßt.
Es ist jetzt schwierig ohne Beispieltabelle festzustellen woran der Fehler liegt.
Ich habe mal eine Beispieltabelle aufgebaut. Dabei wird der eingegebene Wert für die Filterwerte in F2 bzw. G2 per Formel aus dem Eingabeblatt übernommen.
Das Makro zur Aktualisierung der Selektion wird auch automatisch gestartet bei Wertänderung im Eingabeblatt durch ein Makro, das auf die Wertänderung in der Eingabezelle reagiert.
Das Makro zur Selektions-Aktualisierung hab ich etwas modifiziert, so dass auf unnötige Select-Aktionen verzichtet wird.
https://www.herber.de/bbs/user/35573.xls
Gruß
Franz
Anzeige
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 15:39:32
Stefan
Hallo Franz,
mit deinen Makros funktionierts jetzt. Ich hab keine Ahnung, woran es liegt. Erst mal: HERZLICHEN DANK! Jetzt wäre es aber schon schön, wenn du mir kurz erklären könntest, was du geändert hast! :-)
viele Grüße,
Stefan
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 16:13:33
fcs
Hallo Stefan,
da ich deine Ursprungsdatei nicht kenne kann ich natürlich nicht sagen, was jetzt bei der von mir erstellten Beispieldatei anders ist. Wie schon geschrieben funktioniert das von dir aufgezeichnete Makro vom Prinzip her einwandfrei.
gruss
Franz
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 11:57:10
Uwe
Ja, natürlich Stefan,
hatte das Select übersehen, da ich mich nur auf die Filteranweisung konzentrierte; mein Fehler!
Bleibt eigentlich nur noch für mich die Frage, was steht in den Kriterienzellen und was meinst Du dann mit durcheinander bringen?
Du solltest der Form halber diese Zellen außerhalb des Zellenbereichs der Daten legen. Auch sollte der zu filternde Datenbereich keine Zeilenüberschneidungen mit nicht von der Filterung betroffene Bereich haben, das das visuelle Filterergebnis durch verstecken der ausgefilterten Zeilen erfolgt, und dies bezieht sich auf alle Spalten (liegt hier das Durcheinander begründet?).
Gruß,
Uwe
Anzeige
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 11:42:37
Uwe
Hallo, Stefan,
nutzt Du mehrere Tabellen, da Du von Deinem Eingabeblatt schreibst, was durchenader gerät, und zusätzlich von den Blättern die den Spezialfilter enthalten?
So wie Du dprotammcode heir vorstellst, bezieht er sich m.E. nur auf das aktive Arbeitsblatt!
Gruß,
Uwe
AW: Spezialfilter mit Makro aktualisieren
04.08.2006 11:46:02
Stefan
Hi Uwe,
ich habe 3 "Sheets": InOut, Equity Investor, Debt Investor. Ich dachte die sheets-Anweisung wählt das entsprechende Arbeitsblatt aus. Ist das nicht der Fall?
gruß,
Stefan
AW: Umleitung zur Antwort, Stefan!
04.08.2006 12:01:31
Uwe
Antwort steht hier

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige