0

Eigene Texte automatisiert lektorieren mit Word Makros – Bandwurmsätze

Um häufig ausgeführte Aufgaben zu automatisieren, können Sie Makros in Word erstellen. Hierbei handelt es sich um eine Abfolge von Befehlen und Anweisungen, die Sie als einzelnen Befehl zusammenfassen, um eine Aufgabe automatisch auszuführen. Der Anwendungsbereich für Juristen ist vielfältig.

Denn obwohl juristische Texte naturgemäß ein hohes Maß an Individualität aufweisen, zeigt die Erfahrung, dass auch hier einige Schritte Potential für die Unterstützung des Computers bieten. Besonders hilfreich können Makros zur Unterstützung des Eigenlektorats sein. Neben den Rechtschreibprüfungen, die aus moderner Textverarbeitung nicht mehr wegzudenken ist, gibt es weitere stilistische Makel, die sich in die tägliche Arbeit einschleichen. Je mehr Zeit bereits in den Text geflossen ist, desto schwerer wird es diese Ungereimtheiten selbst zu erkennen. Dabei können Makros Abhilfe schaffen.

Makros sind dabei sicherlich nicht der einzige und auch nicht der einfachste Weg, um die genannten (vermeintlichen) Unzulänglichkeiten des eigenen Textes aufzuzeigen. Kommerzielle Anbieter haben sich auf den Vertrieb vergleichbarer Tools mit teils großem Funktionsumfang spezialisiert. Der Vorteil von Makros ist hingegen, dass diese (neben dem Aufwand der Erstellung) keine Kosten verursachen. Entsprechend können auch angestellte Juristen diese Tools schnell erstellen und anschließend einsetzen, ohne ihre Vorgesetzen vom großen Wurf, d.h. dem Erwerb von Lizenzen für sämtliche Mitarbeiter zu überzeugen. Ein weiterer Vorteil ist die Personalisierbarkeit und schließlich dürfte die eigene Beschäftigung mit der Frage, wie „guter Stil“ objektiv zu erfassen ist, die eigene Schriftsatzarbeit verbessern.

Ein häufiger Kritikpunkt, der in diesem Beitrag als Beispiel dienen soll, sind (zu) lange Sätze. Als Faustformel werden im Internet 15 – 20 Wörter genannt. So lange wie der Atem reicht. Das folgende Makro markiert daher alle Sätze im Text, die eine Länge von 20 oder mehr Wörtern (Satzzeichen werden als eigenes Wort gezählt) haben. Dazu werden zunächst sämtliche Sätze im Dokument gezählt. Mit dieser Häufigkeit wird eine Schleife durchlaufen.  In jedem Schleifendurchlauf wird der jeweilige Satz darauf hin untersucht, ob er mehr als 20 Wörter hat und – falls ja – farblich hervorgehoben.

Sub LangeSaetze()

'Definition der benötigten Zählervariablen
 
Dim a As Integer
Dim b As Integer

'ActiveDocument.Sentences.Count zählt die Sätze 
'Diese werden in einer Variable gespeichert

a = ActiveDocument.Sentences.Count

'Initierung einer Schleife, die so a-mal ausgeführt wird.
'Also mit der Häufigkeit der Anzahl der Sätze
For b = 1 To a

    'Initiierung einer Wenn-Dann Abfrage
    'Sätze mit mehr als 20 Wörtern werden gelb markiert. 
 
    If ActiveDocument.Sentences(b).Words.Count >= 20 Then
         ActiveDocument.Sentences(b).HighlightColorIndex = wdYellow
    End If

'Aufruf der nächsten Iteration der Schleife
Next b
End Sub

Ebenso schwer lesbar sind Sätze, die zu stark zergliedert sind. Als weiteres Beispiel soll daher ein Makro dienen, das solche Sätze farblich hervorhebt, die drei Kommata und mehr beinhalten. Der Aufbau bleibt nahezu derselbe. Es ändert sich letztlich allein die Wenn-Dann Abfrage. Dafür speichern wir den jeweils zu betrachtenden Satz in zwei Variablen zwischen. In einer Variable wird der vollständige Satz gespeichert. In der anderen wird der Satz ohne Kommata gespeichert. Dazu machen wir uns die Replace()-Funktion zu nutze. Anschließend vergleichen wir die Länge des Satzes mit und ohne Kommata. Ist die Differenz drei größer oder gleich drei, wird der Satz wiederum markiert.

 

Sub VieleKommata() 

Dim a As Integer 
Dim b As Integer

'zusätzliche Initiierung von String Variablen
Dim SatzMit As String
Dim SatzOhne As String

a = ActiveDocument.Sentences.Count 

For b = 1 To a 

    'Zwischenspeichern des jeweiligen Satzes mit/ohne Kommata 
    SatzMit = Len(ActiveDocument.Sentences(b))
    SatzOhne = Len(Replace(ActiveDocument.Sentences(b)))

    If  SatzMit - SatzOhne = 3 Then 
         ActiveDocument.Sentences(b).HighlightColorIndex = wdYellow 
    End If 

Next b 

End Sub 


								

Schreibe einen Kommentar

Es gelten die üblichen Spielregeln. Der Name wird veröffentlicht, die E-Mail-Adresse nicht. Bitte freundlich und sachbezogen bleiben.