Zählen von Zeichen in Textfeldern (Microsoft Word)
Wenn Sie ein Dokument haben, das Text in verschiedenen Textfeldern enthält, sollten Sie verstehen, dass Word bei einer Wortzählung die Wörter in den Textfeldern nicht in die zurückgegebene Wortzahl einbezieht. Wenn Sie nur die Anzahl der Wörter in einem Textfeld wissen möchten, gibt es einen Weg, dies zu umgehen:
Wählen Sie einfach das Textfeld aus, dessen Wörter Sie zählen möchten, bevor Sie die Wortzählfunktion starten. Word zählt dann pflichtbewusst nur die Wörter im Textfeld und ignoriert den Rest des Dokuments.
Es gibt jedoch eine Zeit, in der diese Auswahl-vor-Zähl-Technik nicht funktioniert. Wenn Sie mehrere Textfelder mit Wörtern haben und diese Textfelder gruppiert sind, erkennt die Wortzählfunktion sie nicht als „zählbar“, wenn Sie die Gruppe auswählen. Mit anderen Worten, um die Zeichen in den Textfeldern der Gruppe zu zählen, müssen Sie zuerst die Gruppierung der Gruppe aufheben und dann jedes Textfeld zählen.
Offensichtlich kann es mühsam werden, dies immer und immer wieder zu tun. Eine Möglichkeit, dies zu umgehen, besteht darin, ein Makro zu verwenden, das dieselben Schritte für Sie ausführt.
Das folgende Makro, TextBoxCount, durchläuft alle Formen in Ihrem Dokument. Wenn sie gruppiert sind, werden sie automatisch nicht gruppiert. Anschließend wird für jedes Textfeld eine Wortanzahl ausgeführt und ein Dialogfeld zurückgegeben, in dem die Anzahl der Wörter und Zeichen in den Textfeldern (zusammen) sowie die Anzahl der Wörter und Zeichen im gesamten Dokument einschließlich der Textfelder angegeben sind.
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
Denken Sie daran, dass dieses Makro alle zuvor im Dokument vorgenommenen Gruppierungen aufhebt. Aus diesem Grund möchten Sie das Makro möglicherweise nach dem Speichern Ihres Dokuments ausführen und das Dokument dann verwerfen (von der Festplatte neu laden), nachdem Sie die Anzahl ermittelt haben.
_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 beliebteste Textverarbeitungssoftware der Welt.) Dieser Tipp (1839) gilt für Microsoft Word 97, 2000, 2002 und 2003.