テキストボックス内の文字のカウント(Microsoft Word)
さまざまなテキストボックスにテキストが含まれているドキュメントがある場合、単語カウントを実行すると、Wordは返される単語カウントのテキストボックスに単語を含めないことを理解する必要があります。テキストボックス内の単語数のみを知りたい場合は、これを回避する方法があります:
単語カウント機能を開始する前に、単語をカウントするテキストボックスを選択するだけです。次に、Wordは、ドキュメントの残りの部分を無視して、テキストボックス内の単語のみを忠実にカウントします。
ただし、このカウント前選択手法が機能しない場合があります。単語を含む複数のテキストボックスがあり、それらのテキストボックスがグループ化されている場合、グループを選択すると、ワードカウント機能はそれらを「カウント可能」として認識しません。つまり、グループを構成するテキストボックスの文字数をカウントするには、最初にグループのグループ化を解除してから、各テキストボックスをカウントする必要があります。
明らかに、これは何度も何度も行うのが面倒になる可能性があります。これを回避する1つの方法は、これらと同じ手順を実行するマクロを使用することです。
次のマクロTextBoxCountは、ドキュメント内のすべての図形をステップスルーします。それらがグループ化されている場合、それらは自動的にグループ化解除されます。次に、各テキストボックスで単語カウントを実行し、テキストボックス内の単語と文字の数(まとめて)と、テキストボックスを含むドキュメント全体の単語と文字の数を示すダイアログボックスを返します。
Sub TextBoxCount() Dim lngTBWords As Long Dim lngTBChars As Long Dim lngDocWords As Long Dim lngDocChars As Long Dim shpTemp As Shape Dim wcTemp As Dialog Dim bDone As Boolean Application.ScreenUpdating = False Do bDone = True For Each shpTemp In ActiveDocument.Shapes If shpTemp.Type = msoGroup Then shpTemp.Ungroup bDone = False End If Next shpTemp Loop Until bDone 'Get count in main document Selection.HomeKey Unit:=wdStory Set wcTemp = Dialogs(wdDialogToolsWordCount) wcTemp.Update wcTemp.Execute lngDocWords = wcTemp.Words lngDocChars = wcTemp.Characters 'Step through shapes and add counts lngTBWords = 0 lngTBChars = 0 For Each shpTemp In ActiveDocument.Shapes shpTemp.Select wcTemp.Execute lngTBWords = lngTBWords + wcTemp.Words lngTBChars = lngTBChars + wcTemp.Characters Next shpTemp lngDocWords = lngDocWords + lngTBWords lngDocChars = lngDocChars + lngTBChars Application.ScreenUpdating = True MsgBox Str(ActiveDocument.Shapes.Count) _ & " text boxes found with" & vbCr _ & Str(lngTBWords) & " word(s) and" & vbCr _ & Str(lngTBChars) & " characters" & vbCr & vbCr _ & " In the total document there are" & vbCr _ & Str(lngDocWords) & " word(s) and" & vbCr _ & Str(lngDocChars) & " characters" End Sub
このマクロは、ドキュメントで以前に行われたグループ化のグループ化を解除することに注意してください。このため、ドキュメントを保存した後でマクロを実行し、カウントを取得した後でドキュメントを破棄(ディスクから再ロード)することをお勧めします。
注:
このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。
(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(1839)は、Microsoft Word 97、2000、2002、および2003に適用されます。