Registriert seit: 06.01.2018
Version(en): 2013
Hallo,
ich arbeite gerade an einem Excel Dokument, an dem parallel auch andere Personen arbeiten. Viele filtern die Tabelle und speichern diese ab. Gibt es eine Möglichkeit, dass beim Schließen der Datei automatisch alle Filter zurückgesetzt werden?
Vielen Dank!
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi,
das wird nur mit einem Makro gehen.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi, hab' mal eines aufgezeichnet. Du kannst einem Button dieses Makro zuweisen - es werden alle Filter aufgehoben, die Datei gespeichert und geschlossen. Code: Option Explicit
Sub FilterEntfernenVorSpeichern()
Selection.AutoFilter ThisWorkbook.Save ThisWorkbook.Close End Sub
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 06.01.2018
Version(en): 2013
Hi,
d.h. man muss die Datei dann auch über diesen Button schließen? Gibt es auch eine Möglichkeit, dass man die Excel-Datei ganz normal schließt und dann das Makro startet und die Filter zurücksetzt?
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen da gibt es in DieseArbeitsmappe oben rechts zur Auswahl ein Ereignismakro … BeforeSave. Dort nimmst Du die Zeile mit dem AutoFilter rein. Mal noch ein Hinweis zum Aufzeichnen. Man sollte berücksichtigen, dass Excel beim Ausführen eines aufgezeichneten Makros eventuell irgendwo ist und nicht genau an der Stelle, wo man das Makro benötigt. Ich tue dabei dann meist irgendeine Zelle auswählen, auf ein anderes Blatt gehen usw. und dann die Aufzeichnung starten. Da muss ich erst das Blatt wählen, den Bereich / die Zelle, wo ich was machen will usw. Dadurch erhöht sich die Wahrscheinlichkeit, dass der Code gleich läuft Falls spezielle Einstellungen erforderlich sind, ändere ich die vorher ggf. auch, sodass bei der Aufzeichnung auch das noch dabei ist.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi, VBA und ich sind noch keine Freunde - deshalb auch nur das aufgezeichnete Makro. Das müssen dir die Spezialisten noch umschreiben, falls du es auch nicht kannst. Im Augenblick macht es zwar das, was es soll. Allerdings müssen dabei wirklich Filter gesetzt sein. Falls keine gesetzt sind, bekommst du eine Fehlermeldung. Wenn du es trotzdem verwendest, musst du nur "ThisWorkbook.close" löschen. Dann kannst du es nach dem Filterentfernen manuell schließen. Gespeichert ist es automatisch. Zitat:[...]dass man die Excel-Datei ganz normal schließt und dann das Makro startet und die Filter zurücksetzt? Das geht nicht. Erst Filter zurücksetzen und speichern (Makro), dann schließen.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen, dann ich auch noch mal Zitat:[...]dass man die Excel-Datei ganz normal schließt und dann das Makro startet und die Filter zurücksetzt? Wenn Du beim Speichern keine Filter gesetzt hattes, dann kannst Du die Datei schließen, es sind keine Filter drin und Du brauchst das Makro nicht. Wenn Du die Datei speicherst und hast meinen Hinweis befolgt, sollten die Filter raus sein. Wenn Du die Datei dann aber nicht schließt sondern weiter arbeiten willst, musst Du die Filter wieder aktivieren. Wenn Dir letzteres nicht zusagt, müsstest Du als Ereignis BeforeClose nehmen und dabei aber die Datei auch nochmal speichern, das ist die Zeile mit dem Save. Das hat allerdings den Nachteil, wenn Du mal nur zumachen willst ohne zu speichern, weil vielleicht was nicht in Ordnung war, geht das nicht mehr. Es wird mit dem Makro ja bei jedem Schließen gespeichert. Da könnte bzw. müsste man noch eine Abfrage dazuschreiben, um das bei Bedarf verhindern zu können …
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi,
man könnte doch beim Speichern ("BeforeSave") und beim Schließen ("BeforeClose") jeweils die Filterung zurücksetzen, sodaß der Autofilter zwar eingeschaltet ist, aber alle Daten angezeigt werden.
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Ralf,
ja, so geht das auch. Mir ging's darum, dass es beim Schließen und Speichern verschiedene "Bedürfnisse" geben kann. Da müsste man sich die verschiedenen möglichen bzw. wahrscheinlichen Fälle mal aufschreiben und was dabei passieren soll und danach dann programmieren.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 06.01.2018
Version(en): 2013
Hallo, stimmt, es macht mehr Sinn die Filter "BeforeSave" zurückzusetzen. Durch folgenden Befehl hat es geklappt: Code: ActiveSheet.Range("Tabelle1").ListObject.Autofilter.ShowAllData ActiveSheet.Range("B1).Value=""
Mein Dokument besteht aber aus mehreren Blättern. Wie kann ich auch die anderen Tabellen hinzufügen, sodass alle Filter in allen Tabellen zurücksetzt werden? Danke!
|