Warum überhaupt klassifizieren?
Du willst wissen, ob ein PDF ein Kaufvertrag, Mietvertrag oder ein Angebot ist?
Oder ob eine E-Mail eine Kündigung, ein Bewerbungsschreiben oder nur Spam enthält?
Das spart Zeit.
Und ist notwendig, wenn Du mit vielen Dokumenten arbeitest.
Zwei Wege zur Lösung
1. GPT-Modell (z. B. über Azure OpenAI)
GPT kann anhand des Textinhalts klassifizieren.
Das geht flexibel – auch bei unstrukturierten Dokumenten.
2. Azure Form Recognizer
Microsofts Tool für strukturierte Dokumentanalyse.
Ideal, wenn Du standardisierte Formulare hast.
Rechnungen, Ausweise, Verträge – alles geht.
Einbindung in Access (Beispiel mit VBA)
Du willst aus Access heraus ein Dokument analysieren lassen?
Kein Problem – mit ein wenig JSON und REST.
Beispiel: Anfrage an GPT API (Azure)
Function GetGPTClassification(docText As String) As String
Dim http As Object
Dim jsonRequest As String
Dim jsonResponse As String
Set http = CreateObject("MSXML2.XMLHTTP")
jsonRequest = "{""messages"":[{""role"":""system"",""content"":""Klassifiziere diesen Text nach Typ (Vertrag, Angebot, Kündigung, etc.):""}," & _
"{""role"":""user"",""content"":""" & Replace(docText, """", """""") & """}]}"
With http
.Open "POST", "https://deine-azure-openai-api.openai.azure.com/openai/deployments/deinmodell/chat/completions?api-version=2024-05-01", False
.setRequestHeader "Content-Type", "application/json"
.setRequestHeader "api-key", "DEIN_API_KEY"
.send jsonRequest
jsonResponse = .responseText
End With
' Achtung: hier brauchst Du ggf. eine JSON-Parser-Bibliothek
GetGPTClassification = jsonResponse
End Function
Beispiel: PDF-Inhalt extrahieren (nur Textinhalt)
Function ExtractPDFText(pdfPath As String) As String
' Nutze externes Tool wie pdftotext.exe
Shell "pdftotext.exe """ & pdfPath & """ -", vbHide
' Lies danach Inhalt der Textdatei ein
' oder direkt stdout, wenn synchronisiert
End Function
Kombination: Access + PDF + GPT
- PDF wird lokal eingelesen
- Text wird an GPT geschickt
- Klassifikation kommt zurück
- Access speichert die Zuordnung in Tabelle „tblDokumente“
Beispiel-Tabelle
| ID | Dateiname | Klassifikation | GPT Confidence |
|---|---|---|---|
| 1 | vertrag_01.pdf | Kaufvertrag | 92 % |
| 2 | email_02.txt | Bewerbung | 88 % |
| 3 | scan_miete03.pdf | Mietvertrag | 95 % |
Wann besser Form Recognizer?
- Wenn Du strukturierte Dokumente hast
- Wenn Layout wiederkehrend ist
- Wenn Du Felder wie „Kundennummer“ oder „Gesamtbetrag“ extrahieren willst
Beispiel: Azure Form Recognizer in VBA nutzen
Du lädst ein PDF hoch per API und bekommst strukturierte JSON-Antwort zurück.
' Upload eines PDF-Dokuments zur Analyse (nur POST-Vorbereitung)
Function CallFormRecognizer(filePath As String) As String
Dim http As Object
Set http = CreateObject("MSXML2.XMLHTTP")
' Achtung: multipart/form-data muss korrekt gebaut werden
' Alternativ: Datei vorher über PowerShell oder Python hochladen
' und nur Ergebnis in Access zurücklesen
End Function
Meine Empfehlung
- GPT = gut für freie Texte, schnelles Ergebnis
- Form Recognizer = besser für standardisierte Formulare
- Kombiniert = ideal bei großen Dokumentmengen
Und in Zukunft?
Wenn Du heute mit Dokumenten arbeitest, die Du manuell einordnest,
dann kannst Du das mit KI deutlich beschleunigen.
Frag mich gern, wie das konkret für Deine Firma aussehen könnte.
Auch ohne Azure-Abo lässt sich viel lokal vorbereiten.
Ich zeig Dir, wie.
Kostenloses Erstgespräch gibt’s wie immer beim Datenschäfer.


