一致する括弧の確認(Microsoft Word)
非常に短いドキュメントを書いているのでない限り、クリーンアップは書くのが最も難しい部分の1つになる可能性があります。次のマクロは、ドキュメントを段落ごとに再確認して、括弧の数がバランスしているかどうかを判断します。マクロは、ドキュメントの各段落の左括弧の数をカウントし、右括弧の数が同じであることを確認します。そうしないと、マクロは、エラーを示す不均衡な段落の前に段落を挿入します。
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 NumPara = ActiveDocument.Paragraphs.Count ReDim CheckP(NumPara) MsgText = "Unbalanced parens in the next paragraph" For J = 1 To NumPara CheckP(J) = False WorkPara = ActiveDocument.Paragraphs(J).Range.Text If Len(WorkPara) <> 0 Then LeftParens = CountChars(WorkPara, "(") RightParens = CountChars(WorkPara, ")") 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
ここには実際には2つのマクロがあることに注意してください。 CountChars関数は、メインのCheckParensマクロ内から呼び出されます。ドキュメントで実際に呼び出す必要があるのは、この後者のマクロ(CheckParens)です。マクロが終了したら、ドキュメントを検索して「Unbalanced parens」という文言を探し、問題が発生している可能性のある場所を確認できます。
注:
このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
link:/ wordribbon-WordTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]
。
_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。
(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(1308)は、Microsoft Word 97、2000、2002、および2003に適用されます。Wordのリボンインターフェイス(Word 2007)用のこのヒントのバージョンを見つけることができます。以降)ここ:
link:/ wordribbon-Checking_for_Matching_Parentheses [一致する括弧のチェック]
。