Wir Literaturübersetzer*innen kennen es vermutlich alle: Da übersetzt man einen Roman von um die vierhundert Seiten ins Deutsche, ersetzt die deutschen Anführungszeichen durch französische Guillemets, weil die in Romanen immer schöner aussehen (wie das geht, habe ich hier erklärt) –, und dann stimmt die Anzahl der aufgehenden und zugehenden Zeichen nicht überein. Irgendwo fehlt ein Zeichen. Oder auch mehrere. Aber wie findet man die nun?
Die Lösung: Über die Makros von Word.
Hier also die Anleitung:
Worddokument öffnen. Dort auf Ansicht ‑> Makros -> Makros anzeigen. Dort in die Zeile einen Titel eingeben, zu Beispiel „Check Quotes“. Anschließend auf Erstellen klicken. Dann öffnet sich ein Fenster. In dieses Fenster kopiert ihr folgenden Code:
Sub CheckQuotes()
Const QuoteIn = „»“
Const QuoteOut = „«“
Dim LastMatch As Range
Dim SensitiveHelp As String
Set LastMatch = ActiveDocument.Range.Characters.Last ‚ immer ^p
With ActiveDocument.Range.Find
.MatchWildcards = True
.Text = „[“ & QuoteIn & QuoteOut & „]“
While .Execute
If .Parent.Text = LastMatch.Text Then
If LastMatch.Text = QuoteIn Then
SensitiveHelp = “ geschlossen.“
Else
SensitiveHelp = “ geöffnet.“
End If
LastMatch.Select
Selection.End = .Parent.End
MsgBox „Dieses Zitat wurde nicht mit einem Anführungszeichen“ & SensitiveHelp, vbOKOnly
Exit Sub
End If
Set LastMatch = .Parent.Duplicate
Wend
End With
End Sub
Dann links oben auf Datei -> normal speichern. Dann Fenster schließen.
Fertig!
Wenn ihr nun im Roman nach fehlenden Anführungszeichen suchen möchtet, geht ihr einfach auf Ansicht -> Makros anzeigen und dann auf Ausführen. Und dann wird automatisch gesucht, wo ein Zeichen auf, aber nicht wieder zu geht.
Nice, oder? Mit Dank an meinem ältesten Sohn, der mir das eingerichtet und erklärt hat, damit ich es euch erklären kann 😊
Wolfgang J. Gerlach meint
Moin und danke für das Makro.
Leider funktioniert es nicht, weil in folgender Zeile immer eine Fehlermeldung auftaucht:
Set LastMatch = ActiveDocument.Range.Characters.Last , immer ^p
Ich habe leider keine Ahnung von Visual Basic, aber es scheint an dem Komma zu liegen:
„Fehler beim Kompilieren: Anweisungsende erwartet“
Wenn man den Code in das neue Makro einfügt, muss ich zudem die Anführungszeichen in englische umwandeln, aber das mag an meiner WORD-Version liegen.
Mag Ihr Sohn nochmal schauen?
Viele Grüße
Wolfgang J. Gerlach