Module

In Access sollen oft mehrere Dinge „auf Knopfdruck“ automatisch auf einmal starten. Beispielsweise soll eine Schaltfläche in einem Formular eine oder gleich mehrere Aktionsabfragen ausführen, danach noch einen Bericht ausdrucken und zu guter Letzt ein Formular schließen. Zur Sicherheit soll vielleicht vorher noch eine Meldung an den Nutzer erfolgen; „Daten jetzt verarbeiten und Abschlussbericht drucken?". All das ist kein Problem mit „Visual Basic für Applikationen“, abgekürzt VBA.

Private Sub cmdButton_Click()
Dim db As DAO.Database
Dim strFrage As String

strFrage = "Daten jetzt verarbeiten und Abschlussbericht drucken?"
If MsgBox(strFrage, vbYesNo) = vbYes Then
    Set db = CurrentDb
    db.Execute "qryDatenVerarbeiten"
    DoCmd.OpenReport "rptAbschlussbericht"
    DoCmd.Close acForm, Me.Name
    Set db = Nothing
End If

End Sub

VBA ist eine eigenständige, leistungsfähige Programmiersprache, die in fast allen Produkten von Microsoft Office und sogar in Produkten von Corel integriert ist. Wie man am Beispiel oben erkennen kann, ist VBA in Microsoft Access sogar fast schon unverzichtbar - und zwar derart, dass die Module im Gegensatz zu anderen Officeanwendungen gar nicht so sehr versteckt sind, sondern gleich in der Navigationsleiste unter dem Menüpunkt „Module“ angezeigt werden. Aber natürlich kann man in Access - genau wie in anderen Officeanwendungen - den VBA-Editor auch mit [Alt][F11] öffnen.

Allerdings würde eine Einführung in VBA den Umfang des Access-Tutorials in etwa verdoppeln. Und da VBA ja auch in anderen Anwendungen integriert ist, gibt es nicht nur zahlreiche Bücher zu VBA dazu, sondern mit dem VBA-Tutorial ein Tutorial dafür, das mit dem Access-tutorial vergleichbar ist. Im Folgenden finden sich lediglich einige VBA-Module, die speziell im Zusammenhang mit Access sinnvoll sind. Teilweise werden dafür VBA-Kenntnisse vorausgesetzt.

Und auch, wenn inzwischen Einiges davon ziemlich angestaubt oder veraltet ist: Man kann noch immer die  knowhow.mdb (Version3.1) empfehlen, in der Klaus Oberdalhoff zahlreiche verschiedene Funktionen, Ideen und Lösungen zusammengetragen hat. Die Veröffentlichung im Rahmen des Access-Tutorials hat er freundlicherweise gestattet.