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.