Access ist wie ein Schweizer Taschenmesser für Daten.
Nicht schön. Aber praktisch. Und wenn Du weißt, wie – auch ziemlich mächtig.
Ich zeig Dir hier, wie Du als Entwickler den Einstieg in Access findest.
Ohne Mausklick-Orgie. Mit Struktur. Und von Anfang an in die richtige Richtung.
Was ist Access überhaupt?
Microsoft Access ist:
- eine Datenbank (mit Tabellen, Abfragen, Beziehungen)
- eine Benutzeroberfläche (Formulare, Berichte)
- eine Programmiersprache (VBA – Visual Basic for Applications)
Es ist keine Excel-Erweiterung.
Und kein Ersatz für SQL Server – aber ein guter Einstieg in relationale Anwendungen.
1. Datenstruktur sauber aufbauen
Du brauchst mindestens:
- Tabellen mit Primärschlüssel
- Beziehungen mit referenzieller Integrität
- Lookup-Tabellen (für z. B. Status, Kategorien)
Beispiel für eine einfache Kundenstruktur:
tblKunden
tblAufträge
tblStatus
(z. B. „Offen“, „In Arbeit“, „Erledigt“)
Verknüpfe die Tabellen im Beziehungsfenster. Mit referenzieller Integrität. Immer.
2. Abfragen erstellen (SQL oder GUI)
Du willst nicht alle Daten auf einmal anzeigen. Du willst filtern, sortieren, berechnen.
Beispiel:
SELECT Kunde, COUNT(*) AS AnzahlBestellungen
FROM tblAufträge
GROUP BY Kunde
Oder:
SELECT * FROM tblKunden
WHERE Land
= „DE“
Nutze zuerst die grafische Oberfläche. Später kannst Du SQL direkt schreiben.
Access ist da tolerant.
3. Formulare nutzen – aber mit System
Formulare zeigen Daten.
Du brauchst:
- Hauptformular (z. B.
frmKunden
) - Unterformular (z. B.
sfmAufträge
) - Navigation, Buttons, Layout
Vermeide:
- endlose Registerkarten
- 40 Felder auf einmal
- „Öffnen Sie Abfrage XY per Doppelklick“
Denk wie ein Benutzer, nicht wie ein Entwickler.
4. VBA einsetzen – früh, aber gezielt
Wenn Dir Makros zu wenig bieten (und das tun sie schnell), steig in VBA ein.
Erste einfache Logik:
Private Sub cmdSpeichern_Click()
If Me.Dirty Then Me.Dirty = False
MsgBox "Gespeichert.", vbInformation
End Sub
Oder:
Private Sub cboStatus_AfterUpdate()
If Me.cboStatus = "Erledigt" Then
Me.txtErledigtAm = Date
End If
End Sub
Wenn Du das verstehst, bist Du auf dem richtigen Weg.
5. Daten validieren – direkt im Formular
Private Sub Form_BeforeUpdate(Cancel As Integer)
If IsNull(Me.txtKunde) Then
MsgBox "Kunde ist Pflicht.", vbExclamation
Cancel = True
End If
End Sub
So kommt kein Schrott in die Datenbank.
Und Du sparst Dir später das große Aufräumen.
6. TempVars für Kontext nutzen
Du willst Werte global verfügbar machen (z. B. Benutzer-ID)?
TempVars.Add "BenutzerID", 3
Dann kannst Du sie überall nutzen – auch in Abfragen:
SELECT * FROM tblAufträge WHERE SachbearbeiterID = TempVars!BenutzerID
7. Bericht erstellen – ja, aber mit Fokus
Berichte in Access sind für PDF, Druck und Export gut.
Nutze gespeicherte Abfragen als Grundlage.
Setze Filter über TempVars oder WHERE-Parameter.
DoCmd.OpenReport "rptMonatsbericht", acViewPreview, , "Monat=4"
Berichte brauchen Pflege – also nur bauen, wenn sie wirklich gebraucht werden.
8. Trennung von Frontend und Backend
Mach es von Anfang an richtig:
- Backend: Nur Tabellen
- Frontend: Alles andere
- Verbindung per
Linked Table Manager
Und wenn das Ding produktiv wird: Frontend als .accde
verteilen.
Dann kann keiner mehr Code ändern.
9. Fehlerbehandlung von Anfang an
On Error GoTo Fehler
' Dein Code
Exit Sub
Fehler:
MsgBox "Fehler: " & Err.Description
Keine Experimente mit Resume Next
. Du willst wissen, wo es knallt.
10. Nicht verzetteln
Access kann viel – aber nicht alles.
Nutze es für:
- schnelle Geschäftsanwendungen
- interne Tools
- Reporting, Export, Datenerfassung
Aber nicht für:
- hochskalierbare Webanwendungen
- mehrere parallele Schreibzugriffe auf Backend im Netz
- IT-Sicherheit auf Bankenniveau
Fazit
Access ist ein gutes Werkzeug für KMU-Projekte.
Aber nur, wenn Du es wie ein Entwickler behandelst – nicht wie ein Power-User.
Also:
- saubere Datenmodelle
- klar strukturierte Formulare
- gezielter Einsatz von VBA
- kontrollierte Abläufe
Dann läuft’s. Und zwar lange. Teilweise bei mir schon über 20 Jahre…
Keine Antworten