Der MsgBox-Wizard - Access-Paradies
Der MsgBox-Wizard - Access-Paradies
Der MsgBox-Wizard - Access-Paradies
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
MSGBOX-WIZARD - DOKUMENTATION<br />
<strong>Der</strong> <strong>MsgBox</strong>-<strong>Wizard</strong><br />
<strong>Der</strong> MSGBOX-WIZARD nimmt Ihnen die unliebsame Aufgabe ab, den Code für die Anzeige von Meldungsfenstern<br />
selbst schreiben zu müssen. Natürlich geht das nicht vollautomatisch; daher stellt Ihnen<br />
das Tool einen Dialog zur Auswahl der benötigten Informationen zur Verfügung (siehe Abb. 1).<br />
Abb. 1: <strong>Der</strong> <strong>MsgBox</strong>-<strong>Wizard</strong><br />
1 Grundlagen<br />
Meldungsfenster sind eine bequeme Möglichkeit, den Anwender über bestimmte Vorgänge entscheiden<br />
zu lassen. Soll eine Datei beim Schließen gespeichert werden oder nicht? Sollen wirklich alle Datensätze<br />
gelöscht werden? So oder ähnlich lauten die Fragen, die in der Programmierung eines Meldungsfensters<br />
münden.<br />
<strong>Der</strong> Code für das Meldungsfenster aus Abb. 2 sieht beispielsweise folgendermaßen aus:<br />
<strong>MsgBox</strong> "Bitte füllen Sie die mit Sternchen markierten Felder.", vbYesNo +<br />
vbExclamation + vbDefaultButton1, "Fehlende Eingabe"<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
Abb. 2: Beispiel für ein Meldungsfenster<br />
Wenn Sie diesen oder ähnlichen Code nicht jedes Mal von Hand eingeben möchten, können Sie einfach<br />
den MSGBOX-WIZARD verwenden. Damit geben Sie den Text für die Titelleiste und die eigentliche Me ldung<br />
ein und klicken die gewünschten Optionen an und – fertig!<br />
<strong>Der</strong> MSGBOX-WIZARD wird in einer eigenen Symbolleiste in die VBA-Entwicklungsumgebung integriert<br />
und ist allzeit bereit. Klicken Sie einfach an die Stelle im Code, an der Sie eine MSGBOX-Anweisung<br />
unterbringen möchten, rufen Sie den MSGBOX-WIZARD auf und stellen Sie die Eigenschaften des Me ldungsfensters<br />
ein. Noch ein Klick auf die OK-Schaltfläche und die entsprechende Anweisung wird an<br />
der gewünschten Stelle im Code eingefügt.<br />
2 Installation des <strong>MsgBox</strong>-<strong>Wizard</strong><br />
Um den MSGBOX-WIZARD zu installieren, starten Sie einfach die Datei SETUP.EXE. Das Setup leitet durch<br />
die wenigen Schritte zur Installation der Anwendung (siehe Abb. 3).<br />
Abb. 3: <strong>Der</strong> Setup-Assistent<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
Sie können im Assistenten lediglich eine Einstellung beeinflussen: das Verzeichnis, in dem die Datei für<br />
das Deinstallieren des Tools gespeichert wird (siehe Abb. 4).<br />
Abb. 4: Eingabe des Zielverzeichnisses<br />
3 Benutzen des <strong>MsgBox</strong>-<strong>Wizard</strong><br />
Wenn Sie während der Installation eine Office-Anwendung geöffnet hatten, müssen Sie diese zunächst<br />
schließen, bevor Sie auf den MSGBOX-WIZARD zugreifen können.<br />
Anschließend starten Sie Microsoft <strong>Access</strong> (oder eine andere Office-Anwendung, die den VBA-Editor<br />
verwendet). Öffnen Sie eine beliebige Datenbank und starten Sie dann den VBA-Editor – beispielsweise<br />
per Doppelklick auf einen der Einträge der Registerseite MODULE des Datenbankfensters.<br />
Im VBA-Editor offenbart sich dann auch direkt die Aufrufmöglichkeit für den MSGBOX-WIZARD: Eine<br />
neue Symbolleiste namens ACCESSVBATOOLS bietet den Eintrag MSGBOX-WIZARD zum Starten des Tools<br />
an (siehe Abb. 5).<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
Abb. 5: Eine neue Symbolleiste offenbart den <strong>MsgBox</strong>-<strong>Wizard</strong><br />
Ein Klick auf diesen Eintrag öffnet dann auch direkt das Tool (siehe Abb. 6).<br />
<strong>Der</strong> MSGBOX-WIZARD bietet folgende Möglichkeiten an:<br />
• Eingabe der Titelzeile und des Meldungsfensters<br />
• Auswahl der anzuzeigenden Schaltflächen<br />
• Auswahl der Schaltfläche, die beim Anzeigen des Meldungsfensters aktiviert sein soll<br />
• Ein- und Ausschalten der VB-Konstanten<br />
• Auswahl des gewünschten Symbols<br />
• Festlegen der Code-Konstruktion: einfache MSGBOX-Anweisung, Auswertung per IF…THEN-<br />
Anweisung oder Auswertung per SELECT CASE-Statement<br />
• Angabe einer Variablen, die den Rückgabewert des Meldungsfensters aufnehmen kann<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
Abb. 6: <strong>Der</strong> <strong>MsgBox</strong>-<strong>Wizard</strong> im Einsatz<br />
4 Die Funktionen im Detail<br />
Im Folgenden finden Sie detaillierte Informationen zu den einzelnen Einstellungsmöglichkeiten.<br />
4.1 Titelzeile<br />
<strong>Der</strong> Text, den Sie für das Feld TITELZEILE angeben, erscheint im Titel des Meldungsfensters (siehe Abb. 7).<br />
Abb. 7: Titelzeile eines Meldungsfensters<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
4.2 Meldungstext<br />
<strong>Der</strong> Meldungstext ist einer der wichtigsten Teile des Meldungsfensters (siehe Abb. 8). Sie können den<br />
Meldungstext in einer Zeile eingeben oder auch Zeilenumbrüche verwenden. Dazu betätigen Sie einfach<br />
an der gewünschten Stelle die Eingabetaste (siehe Abb. 9).<br />
Abb. 8: <strong>Der</strong> Meldungstext<br />
Abb. 9: Einfügen eines Zeilenumbruchs<br />
4.3 Anzuzeigende Schaltflächen<br />
Mit dieser Option wählen Sie die Kombination von Schaltflächen aus, die Sie für den jeweiligen Fall<br />
benötigen (siehe Abb. 10). Die Auswahl schränkt gleichzeitig die Optionen STANDARDSCHALTFLÄCHE,<br />
AUFBAU und VARIABLE ein. Je mehr Schaltflächen die jeweilige Auswahl enthält, desto flexibler können<br />
Sie die anderen Optionen einsetzen.<br />
So ist bei einer Schaltfläche (OK) nur das einfache Aufrufen eines Meldungsfensters möglich.<br />
Abb. 10: Auswahl der anzuzeigenden Schaltflächen<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
4.4 Standardschaltfläche<br />
Die Option STANDARDSCHALTFLÄCHE (siehe Abb. 11) legt fest, welche der vorhandenen Schaltflächen als<br />
Standardschaltfläche markiert wird und damit beim Betätigen der Eingabetaste automatisch ausgelöst<br />
wird.<br />
Abb. 11: Auswahl der Standardschaltfläche<br />
4.5 Konstanten<br />
Unter VBA können Sie für das Festlegen in manchen Fällen Konstanten oder die entsprechenden Zahlenwerte<br />
verwenden. Die folgenden beiden Anweisungen haben beispielsweise genau die gleiche Wirkung:<br />
<strong>MsgBox</strong> "Bitte füllen Sie die mit Sternchen markierten Felder.", vbOKOnly + vbCritical +<br />
vbDefaultButton1, "Fehlende Eingabe"<br />
<strong>MsgBox</strong> "Bitte füllen Sie die mit Sternchen markierten Felder.", 16, "Fehlende Eingabe"<br />
Mit der Option KONSTANTEN (siehe Abb. 12) können Sie entscheiden, ob Sie lieber die Konstanten oder<br />
die entsprechenden Zahlenwerte verwenden möchten.<br />
Abb. 12: VB-Konstanten ein- oder ausschalten<br />
4.6 Symbole<br />
„Ein Bild sagt tausend Worte“ – oder wie heißt es so schön? Mit einer kleinen grafischen Aufmerksamkeit<br />
können Sie das Interesse des Anwenders direkt ein wenig mehr auf das Meldungsfenster lenken.<br />
Die Möglichkeit zur Auswahl des geeigneten Symbols finden Sie in Abb. 13.<br />
Abb. 13: Auswahl des Symbols<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
4.7 Aufbau<br />
Wenn Sie ein Meldungsfenster mit mehr als einer Schaltfläche verwenden, müssen die unterschiedlichen<br />
Benutzerantworten ausgewertet werden. Dies geschieht in der Regel in einer IF…THEN-<br />
Konstruktion oder in einem SELECT CASE-Statement.<br />
Die Option AUFBAU (siehe Abb. 14) bietet die jeweils sinnvollere Variante an: Wenn Sie nur eine Schaltfläche<br />
anbieten, gibt es nur den einfachen Aufbau. Mit zwei Schaltflächen können Sie zwischen dem<br />
einfachen Aufbau und der IF…THEN-Konstruktion wählen. Die beiden Varianten sehen dann beispielsweise<br />
folgendermaßen aus:<br />
Einfacher Aufbau:<br />
<strong>MsgBox</strong> "Bitte füllen Sie die mit Sternchen markierten Felder.", vbYesNo + vbDefault-<br />
Button1, "Fehlende Eingabe"<br />
If…Then-Konstruktion:<br />
If <strong>MsgBox</strong>("Bitte füllen Sie die mit Sternchen markierten Felder.", vbYesNo + vbDe-<br />
faultButton1, "Fehlende Eingabe") = vbYes Then<br />
Else<br />
End If<br />
Sie sehen, dass das Tool direkt ein komplettes IF…THEN-Konstrukt ausgibt, in das Sie nur noch den gewünschten<br />
Quellcode einsetzen müssen.<br />
Abb. 14: Auswahl des richtigen Aufbaus<br />
4.8 Variable<br />
Wenn Sie in der vorherigen Option den einfachen Aufbau gewählt haben, können Sie mit der Option<br />
VARIABLE angeben, ob der Rückgabewert des Meldungsfensters (also der Wert der gedrückten Schaltfläche)<br />
direkt an eine Variable übergeben werden soll (siehe Abb. 15).<br />
Sie könnten dann diese Variable in einer eigenen IF…THEN-Anweisung oder auf andere Art und Weise<br />
verwenden.<br />
Zusätzlich können Sie festlegen, ob der MSGBOX-WIZARD automatisch die Deklaration der Variablen<br />
hinzufügen soll. Das Ergebnis würde dann etwa wie folgt aussehen:<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
Dim strVariable As Long<br />
strVariable = <strong>MsgBox</strong>("Bitte füllen Sie die mit Sternchen markierten Felder.", vbYesNo<br />
+ vbDefaultButton1, "Fehlende Eingabe")<br />
Abb. 15: Einstellungen für die Verwendung einer Variablen<br />
4.9 Anzeige des erstellten Codes<br />
Das untere Textfeld zeigt an, wie der Code mit den aktuellen Einstellungen aussieht (siehe Abb. 16).<br />
Abb. 16: Anzeige des voraussichtlichen Ergebnisses<br />
4.10 Schaltflächen des Tools<br />
Nach der Auswahl der gewünschten Einstellungen können Sie diese mit der OK-Schaltfläche in das<br />
aktuelle Codefenster übernehmen. <strong>Der</strong> resultierende Code wird an der Stelle eingefügt, an der sich die<br />
Einfügemarke zum Zeitpunkt des Aufrufs des Tools befand (siehe Abb. 17).<br />
Mit der ABBRECHEN-Schaltfläche verwerfen Sie die Eingaben, es wird keine Änderung am Quellcode<br />
vorgenommen.<br />
Die Schaltfläche ANZEIGEN zeigt das Meldungsfenster an, wie es später beim Aufruf aussehen wird (siehe<br />
Abb. 18).<br />
Abb. 17: Die Schaltflächen des Tools<br />
©2005 André Minhorst, Günther Kramer accessVBATools
MSGBOX-WIZARD - DOKUMENTATION<br />
Abb. 18: Beispiel-Meldungsfenster<br />
5 Speichern der Einstellungen<br />
Viele Entwickler haben bestimmte Vorlieben, was die Gestaltung von Meldungsfenstern angeht. Dem<br />
trägt der MSGBOX-WIZARD Rechnung, den er speichert alle Einstellungen zwischen und zeigt die Einstellungen<br />
beim nächsten Aufruf wieder an.<br />
6 Weitere Informationen<br />
<strong>Der</strong> MSGBOX-WIZARD ist ein Tool aus der ACCESSVBATOOLS-Reihe.<br />
Bei Fragen und Informationen wenden Sie sich bitte an folgende E-Mail-Adresse:<br />
tools@access-im-unternehmen.de<br />
©2005 André Minhorst, Günther Kramer accessVBATools