Alle Grafiken zählen (Microsoft Word)
Bob muss alle Grafiken in einem Dokument zählen. Einige der Grafiken sind inline und andere schwebend. Einige wurden als Bilder eingefügt, andere mit den Zeichenwerkzeugen in Word. Bob vermutet, dass das Dokument zwischen 150 und 200 Grafiken enthält, aber er würde gerne einen Weg finden, um schnell zu zählen.
Es gibt einige Dinge, die Sie versuchen können, um die Anzahl Ihrer Grafiken zu ermitteln. Das erste ist, eine einfache Suche und Ersetzung zu verwenden. Alles was Sie tun müssen, ist nach ^ g zu suchen und durch ^ & zu ersetzen. Das findet jede Grafik und ersetzt sie durch alles, was gefunden wurde. Mit anderen Worten, es gibt keine Änderungen an Ihrem Dokument. Word informiert Sie jedoch darüber, wie viele „Ersetzungen“ vorgenommen wurden. Diese Anzahl ist die Anzahl der Grafiken in Ihrem Dokument.
Das Problem bei diesem Ansatz ist, dass nur Inline-Bilder innerhalb des Dokuments gezählt werden. Es wird nichts auf der Zeichnungsebene „gefunden und ersetzt“. Um alle Bilder zu erhalten, müssen Sie einen anderen Ansatz ausprobieren. Sie können beispielsweise die Funktion „Gehe zu“ von Word verwenden. Drücken Sie F5, um die Registerkarte Gehe zu des Dialogfelds Suchen und Ersetzen anzuzeigen. Wenn Sie auf der rechten Seite des Bildschirms Grafik auswählen, können Sie durch die Grafiken im Dokument gehen, indem Sie auf die Schaltfläche Weiter klicken. Wenn Sie eine Reihe von Grafiken haben, können Sie einfach +150 in das Feld einfügen und auf Gehe zu klicken. Sie springen zu dieser Grafiknummer, sofern diese verfügbar ist, und können dann die verbleibenden durchgehen und dabei zählen.
Dieser Ansatz ist besser beim Finden von Grafiken als der Find-and-Replace-Ansatz. Es ist jedoch nicht perfekt, da es in Ihrem Dokument Stellen gibt, an denen Grafiken platziert werden können, die von Go To nicht erfasst werden.
(Oder ehrlich gesagt vom Objektbrowser, der denselben Suchmechanismus wie Gehe zu verwendet.) Bei diesem Ansatz werden Grafiken gefunden, die sich inline und auf der Zeichnungsebene befinden. Sie werden jedoch nicht an anderen Stellen gefunden, z. B. in Kopf- oder Fußzeilen. Um diese zu finden und in die Zählung einzubeziehen, müssen Sie ein Makro verwenden. Das folgende Makro bietet eine umfassendere Anzahl von Grafiken:
Sub CountGraphics() Const sBkMk = "ReturnHere" Dim lngSections As Long Dim lngSectionCounter As Long Dim lngMainDocInlineShapes As Long Dim lngMainDocShapes As Long Dim lngHdrInlineShapes As Long Dim lngHdrShapeRange As Long Dim lngFtrInlineShapes As Long Dim lngFtrShapeRange As Long Dim lngTotalInlineShapes As Long Dim lngTotalShapes As Long Dim sMsgText As String Application.ScreenUpdating = False 'Get the number of sections in the document. lngSections = ActiveDocument.Sections.Count 'Get the number of inline objects and 'shape objects in the main document lngMainDocInlineShapes = ActiveDocument.InlineShapes.Count lngMainDocShapes = ActiveDocument.Shapes.Count 'Insert a bookmark to return to this place in the document. ActiveDocument.Bookmarks.Add sBkMk, Selection.Range 'Go to the first page of the document. Selection.HomeKey wdStory, wdMove 'Cycle through all of the sections in the document 'looking in headers and footers for graphics For lngSectionCounter = 1 To lngSections 'Go to the header of the current page ActiveDocument.ActiveWindow.View.SeekView = wdSeekCurrentPageHeader Selection.WholeStory 'Get the number of inline objects and shape objects lngHdrInlineShapes = lngHdrInlineShapes _ + Selection.Range.InlineShapes.Count lngHdrShapeRange = lngHdrShapeRange _ + Selection.Range.ShapeRange.Count 'Go to the footer of the current page ActiveDocument.ActiveWindow.View.SeekView = wdSeekCurrentPageFooter Selection.WholeStory 'Get the number of inline objects and shape objects lngFtrInlineShapes = lngFtrInlineShapes _ + Selection.Range.InlineShapes.Count lngFtrShapeRange = lngFtrShapeRange _ + Selection.Range.ShapeRange.Count Selection.GoTo wdGoToSection, wdGoToNext Next 'Go to the main body of the document. ActiveDocument.ActiveWindow.View.SeekView = wdSeekMainDocument 'Enable automatic screen updates Application.ScreenUpdating = True Application.ScreenRefresh 'Go to the bookmark that was inserted earlier. If ActiveDocument.Bookmarks.Exists(sBkMk) Then Selection.GoTo wdGoToBookmark, , , sBkMk ActiveDocument.Bookmarks(sBkMk).Delete Else MsgBox "The bookmark '" & sBkMk & "' does not exist." End If 'Calculate the total number of inlineshape objects 'and (shape and shaperange) objects lngTotalInlineShapes = lngMainDocInlineShapes _ + lngHdrInlineShapes + lngFtrInlineShapes lngTotalShapes = lngMainDocShapes _ + lngHdrShapeRange + lngFtrShapeRange 'Include the values from the variables into the 'text of the message sMsgText = vbTab & vbTab & "Inline Shapes" _ & vbTab & "Other Shapes" & vbCr _ & "Main Document:" & vbTab & lngMainDocInlineShapes _ & vbTab & vbTab & lngMainDocShapes & vbCr _ & "Headers:" & vbTab & vbTab & lngHdrInlineShapes _ & vbTab & vbTab & lngHdrShapeRange & vbCr _ & "Footers:" & vbTab & vbTab & lngFtrInlineShapes _ & vbTab & vbTab & lngFtrShapeRange & vbCr _ & "Total:" & vbTab & vbTab & lngTotalInlineShapes _ & vbTab & vbTab & lngTotalShapes & vbCr & vbCr _ & "Note: The values for the headers and the footers " _ & "could include duplicates." 'Display the results of the procedure. MsgBox sMsgText End Sub
Beachten Sie, dass das Makro nicht nur die Anzahl der Grafiken im Hauptdokument abruft, sondern auch jeden Abschnitt im Dokument durchläuft und die Kopf- und Fußzeilen auf Grafiken überprüft. Bei diesem Makro sind einige Dinge zu beachten, die sich auf die Genauigkeit der zurückgegebenen Zählung auswirken können. Alle diese Elemente sind Teil des Umgangs von Word mit Grafiken in einem Dokument.
-
Wenn das Dokument eine Zeichenfläche enthält, wird es unabhängig von der Anzahl der darin enthaltenen einzelnen Formen als einzelne Grafik (ein Formobjekt) behandelt.
-
Separate Formen werden separat gezählt. Wenn separate Formen zu Gruppen zusammengefasst werden, werden sie als einzelne Form gezählt.
Schließlich gibt es noch eine andere Möglichkeit, wie Sie versuchen können, eine Anzahl von Grafiken zu erhalten: Speichern Sie Ihr Dokument einfach als Webseite (im HTML-Format). Als Teil des Speichervorgangs auf diese Weise speichert Word die Grafikdateien im Dokument in einem eigenen Ordner. Sie müssen dann nur noch die Anzahl der Dateien im Ordner überprüfen und haben eine gute Vorstellung davon, wie viele Grafiken sich im Dokument befanden. (Wie Sie ein Dokument im HTML-Format speichern, wird in anderen WordTips behandelt.)
_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 (10387) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: