Wenn Sie keine sehr kurzen Dokumente schreiben, kann das Aufräumen einer der schwierigsten Teile des Schreibens sein. Das folgende Makro überprüft Ihr Dokument Absatz für Absatz, um festzustellen, ob Sie eine ausgeglichene Anzahl von Klammern haben. Das Makro zählt die Anzahl der linken Klammern in jedem Absatz Ihres Dokuments und stellt sicher, dass Sie die gleiche Anzahl der rechten Klammern haben. Wenn Sie dies nicht tun, fügt das Makro vor dem unsymmetrischen Absatz einen Absatz ein, der den Fehler angibt.

Sub CheckParens()

Dim WorkPara As String     Dim CheckP() As Boolean     Dim NumPara As Integer, J As Integer     Dim LeftParens As Integer, RightParens As Integer     Dim MsgText As String     Dim OpenChar As String     Dim CloseChar As String

OpenChar = "("

CloseChar = ")"

MsgText = "Unbalanced parens in the next paragraph"



NumPara = ActiveDocument.Paragraphs.Count     ReDim CheckP(NumPara)



For J = 1 To NumPara         CheckP(J) = False         WorkPara = ActiveDocument.Paragraphs(J).Range.Text         If Len(WorkPara) <> 0 Then             LeftParens = CountChars(WorkPara, OpenChar)

RightParens = CountChars(WorkPara, CloseChar)

If LeftParens <> RightParens Then CheckP(J) = True         End If     Next J

For J = NumPara To 1 Step -1         If CheckP(J) Then             Selection.HomeKey Unit:=wdStory, Extend:=wdMove             If J > 1 Then                 Selection.MoveDown Unit:=wdParagraph, _                   Count:=(J - 1), Extend:=wdMove             End If             Selection.InsertParagraphBefore             Selection.MoveLeft Unit:=wdCharacter, Count:=1             Selection.Style = "Normal"

Selection.TypeText Text:=MsgText         End If     Next J End Sub

Private Function CountChars(A As String, C As String) As Integer     Dim Count As Integer     Dim Found As Integer

Count = 0     Found = InStr(A, C)

While Found <> 0         Count = Count + 1         Found = InStr(Found + 1, A, C)

Wend     CountChars = Count End Function

Beachten Sie, dass es hier tatsächlich zwei Makros gibt. Die CountChars-Funktion wird im Hauptmakro von CheckParens aufgerufen. Dieses letztere Makro (CheckParens) sollten Sie tatsächlich für Ihr Dokument aufrufen. Wenn das Makro fertig ist, können Sie das Dokument durchsuchen und nach dem Wortlaut „Unbalanced parens“ suchen, um festzustellen, wo möglicherweise Probleme auftreten.

Beachten Sie auch, dass Sie die Art und Weise, wie dieses Makro geschrieben ist, leicht ändern können, um nach anderen „gepaarten“ Zeichen zu suchen. Sie müssen lediglich ändern, was den Variablen OpenChar, CloseChar und MsgText zugewiesen ist. Wenn Sie beispielsweise nach nicht übereinstimmenden Klammern suchen möchten, können Sie diese Variablen folgendermaßen ändern:

OpenChar = "["

CloseChar = "]"

MsgText = "Unbalanced brackets in the next paragraph"

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.

(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (1018) gilt für Microsoft Word 2007, 2010, 2013 und 2016. Eine Version dieses Tipps für die ältere Menüoberfläche von Word finden Sie hier: