Worum geht’s?

Du hast lange Word-Texte.
Kein roter Faden. Keine Struktur. Kein Lesefluss.

Du willst daraus:

  • eine logische Gliederung
  • Zwischenüberschriften
  • ggf. Umstrukturierung der Absätze

Machbar.
Per GPT oder Azure Language Services.
Direkt aus Word. Mit VBA.

Was brauchst Du?

  • Word 2024 mit Makrozugriff
  • OpenAI API oder Azure Language Resource
  • Einen Text mit mehreren Absätzen
  • Kein Tabellenwirrwarr – Fließtext reicht

Ziel

GPT soll analysieren:

  • Welche Struktur hat der Text?
  • Wo fehlen logische Abschnitte?
  • Wo wäre eine Zwischenüberschrift hilfreich?

Und er soll Dir dann:

  • eine nummerierte Gliederung liefern
  • alternativ: den Text mit Vorschlägen formatieren

Beispiel-Prompt für GPT

Analysiere folgenden Text auf logische Struktur. Gib eine gegliederte Gliederung in maximal 5 Hauptpunkten mit optionalen Unterpunkten zurück. Gib keine vollständigen Sätze, sondern nur Überschriften.

Oder:

Gliedere folgenden Text und füge passende Zwischenüberschriften ein.
Formatiere jede Zwischenüberschrift als Überschrift 2.

GPT-Funktion in VBA

Function GPTGliederung(text As String, mode As String) As String
    Dim http As Object
    Dim apiKey As String
    Dim prompt As String
    Dim json As String
    Dim result As String

    apiKey = "sk-..." ' Dein OpenAI API-Key

    If mode = "gliederung" Then
        prompt = "Analysiere folgenden Text und gib eine strukturierte Gliederung mit maximal 5 Punkten zurück:" & vbCrLf & text
    ElseIf mode = "formatierung" Then
        prompt = "Füge im folgenden Text sinnvolle Zwischenüberschriften ein. Formatiere sie als **Überschrift 2**:" & vbCrLf & text
    Else
        GPTGliederung = "Ungültiger Modus"
        Exit Function
    End If

    json = "{""model"":""gpt-4"",""messages"":[{""role"":""user"",""content"":""" & Replace(prompt, """", "\""") & """}],""temperature"":0.4}"

    Set http = CreateObject("MSXML2.XMLHTTP")
    With http
        .Open "POST", "https://api.openai.com/v1/chat/completions", False
        .setRequestHeader "Content-Type", "application/json"
        .setRequestHeader "Authorization", "Bearer " & apiKey
        .send json
        result = .responseText
    End With

    Dim startPos As Long, endPos As Long
    startPos = InStr(result, """content"":""") + 11
    endPos = InStr(startPos, result, """}")
    GPTGliederung = Mid(result, startPos, endPos - startPos)
End Function

Text aus Word-Dokument analysieren

Sub GliederungErzeugen()
    Dim text As String
    Dim antwort As String

    text = Left(ActiveDocument.Content.Text, 3000) ' Textlimit beachten
    antwort = GPTGliederung(text, "gliederung")

    Documents.Add
    Selection.TypeText Text:="Vorgeschlagene Gliederung:" & vbCrLf & vbCrLf & antwort
End Sub

Formatierte Version mit Zwischenüberschriften einfügen

Sub TextMitZwischenüberschriften()
    Dim text As String
    Dim antwort As String
    Dim para As Paragraph

    text = Left(ActiveDocument.Content.Text, 3000)
    antwort = GPTGliederung(text, "formatierung")

    Documents.Add
    Selection.TypeText Text:=antwort

    For Each para In ActiveDocument.Paragraphs
        If InStr(para.Range.Text, "**") > 0 Then
            para.Range.Text = Replace(para.Range.Text, "**", "")
            para.Style = "Überschrift 2"
        End If
    Next para
End Sub

Alternative: Azure Language Service – Text Analytics

Setup

  • Azure Language Resource erstellen
  • Endpoint & Key notieren
  • API: „Extractive Summarization“ + ggf. „Key Phrases“

Vorteile

  • DSGVO-konformer Betrieb möglich
  • Analyse von größeren Texten
  • Kein „freies Textmodell“ wie GPT, aber stabiler

Aufruf per HTTP

POST https://<region>.api.cognitive.microsoft.com/language/:analyze-text?api-version=2023-04-01

Headers:
- Ocp-Apim-Subscription-Key: <dein-key>
- Content-Type: application/json

Body:
{
  "kind": "KeyPhraseExtraction",
  "parameters": { "modelVersion": "latest" },
  "analysisInput": {
    "documents": [
      { "id": "1", "language": "de", "text": "..." }
    ]
  }
}

Antwort: Liste mit Stichwörtern → kann man in Überschriften überführen.

Tipps aus der Praxis

  • Texte vorher kürzen oder sinnvoll splitten
  • GPT kann auch „Formatieren in Markdown“ – zur Vorstrukturierung
  • Gliederungen immer nochmal gegenlesen
  • Formatierte Antwort in neues Dokument ausgeben, nicht in das Original

Erweiterungsideen

  • Gliederung automatisch als Inhaltsverzeichnis übernehmen
  • Export als strukturierte PDF
  • Analyse mehrerer Dokumente per Batch
  • Integration in Word-Add-in mit Buttonsteuerung

Wenn Du unstrukturierte Texte automatisch in lesbare Kapitel bringen willst – dann lass GPT oder Azure für Dich gliedern, während Du den nächsten Kaffee holst.

Tags:

No responses yet

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert