Hallo zusammen,
Ich arbeite seit kurzer Zeit an dem beigefügten Projekt und dachte, ich würde es mit der Gruppe teilen. Um es kurz zusammenzufassen, meine Organisation hatte eine zuvor halb veraltete Methode zur Verfolgung der bezahlten Freizeit für Mitarbeiter. In Excel war ein Kalender integriert (ähnlich dem Kalenderblatt in meiner angehängten Datei). Ein Administrator würde im Wesentlichen direkt in den Kalender eingeben, was, wie Sie sich vorstellen können, mit dem Wachstum der Organisation zu einer relativ mühsamen Aufgabe wurde. Ich habe viele der Excel VBA-Ideen zusammengestellt, die ich aus früheren Erfahrungen bei der Vervollständigung dieser Datenbank gesammelt habe. Ich mache hier ein paar Anmerkungen: Ich verstehe, dass dies auf makroskopischer Ebene möglicherweise nicht so raffiniert ist wie der Erwerb einer dedizierten Lösung, aber das ist natürlich derzeit keine Option. Außerdem ist der Code an manchen Stellen etwas unordentlich, da er nicht vollständig überprüft und verbessert wurde. Schließlich gibt es einige Dinge in einigen Formen, die seltsam erscheinen mögen (Kontrollkästchen, die nirgendwo hinführen). Diese sind wahrscheinlich ein Opfer, wenn ich die Datei beschneide, um alle vorhandenen vertraulichen Daten zu entfernen.
Wie der Titel [ominös] vermuten lässt, gibt es eine Reihe von Elementen in der Arbeitsmappe. Wenn ich ein Element auswählen müsste, auf das ich mich konzentrieren soll, würde ich vorschlagen, einen Blick auf das erste Element zu werfen: das Erstellen von Steuerelementen zur Laufzeit. Ein Problem beim Übergang zu einer Datenbankstruktur war der Verlust von Abteilungsübersichten, die dem Management zur Verfügung gestellt werden mussten. Natürlich können einzelne Abteilungsblätter verknüpft werden, aber das würde ein trägeres und weniger skalierbares Modell erzeugen. Darüber hinaus fordern verschiedene Manager unterschiedliche Arten von Informationen an, sodass es sich kaum um eine "Einheitsgröße" handelt. Userform3 (ich weiß, kreative Titel!) ermöglicht es dem Arbeitsmappenadministrator, bestimmte Informationen je nach Bedarf in Berichte zu exportieren. Wenn das Benutzerformular gestartet wird, wird ein Listenfeld mit den aktuellen Abteilungen angezeigt. Darüber hinaus werden Umschaltschaltflächen generiert, die jedem Feld im DATA-Arbeitsblatt entsprechen, sodass dieses Feld in ein neues Buch exportiert werden kann. Der wahre Vorteil, da Spalten hinzugefügt oder gelöscht werden (zum Beispiel habe ich unsere Budgetzahlen entfernt), erweitert sich das Benutzerformular und verkleinert und fügt/löscht Schaltflächen je nach Bedarf. Versuche es. Fügen Sie eine Spalte hinzu und starten Sie dann das Formular, um zu sehen, dass es jetzt in den Umschaltflächen enthalten ist.
Darüber hinaus gibt es in diesem Formular ein Kontrollkästchen zum Drucken von Elementen, mit dem ein Bericht gedruckt und in eine neue Arbeitsmappe exportiert wird.
Wenn Sie die Arbeitsmappe öffnen, sollte eine schwebende Symbolleiste mit einer Option für Berichte angezeigt werden (soweit ich das verstanden habe, funktioniert dies in Excel 2007 nicht immer, aber die Symbolleiste befindet sich auf der Registerkarte Entwickler des Menübands). Wenn es immer noch nicht sichtbar ist, können Sie jederzeit Alt+F8 drücken und dann das Makro ShowForm3 auswählen, um das Benutzerformular für Berichte anzuzeigen.
Ich habe den gesamten Code in der Arbeitsmappe für den neugierigen Beobachter freigeschaltet und beantworte gerne alle relevanten Fragen.