Durchlaufen einer Auflistung

Es gibt mehrere verschiedene Verfahren, die Elemente einer Auflistung zu durchlaufen. Zu empfehlen ist jedoch die Methode mit der For Each...Next-Schleife. In dieser Struktur wiederholt Visual Basic einen Block von Anweisungen für jedes Objekt in einer Auflistung. Im folgenden Beispiel wird der Name jedes Dokuments in der Documents-Auflistung angezeigt.

Sub LoopThroughOpenDocuments() 
 Dim docOpen As Document 
 
 For Each docOpen In Documents 
 MsgBox docOpen.Name 
 Next docOpen 
End Sub

Anstatt jeden Elementnamen in einem Meldungsfeld anzuzeigen, können Sie ein Datenfeld zum Speichern der Informationen verwenden. In diesem Beispiel wird ein Array verwendet, um den Namen jeder Textmarke zu speichern, die im aktiven Dokument enthalten ist.

Sub LoopThroughBookmarks() 
 Dim bkMark As Bookmark 
 Dim strMarks() As String 
 Dim intCount As Integer 
 
 If ActiveDocument.Bookmarks.Count > 0 Then 
 ReDim strMarks(ActiveDocument.Bookmarks.Count - 1) 
 intCount = 0 
 For Each bkMark In ActiveDocument.Bookmarks 
 strMarks(intCount) = bkMark.Name 
 intCount = intCount + 1 
 Next bkMark 
 End If 
End Sub

Sie können eine Auflistung durchlaufen, um eine Aufgabe an Elementen der Auflistung bedingungsweise durchzuführen. Im folgenden Code werden die DATE-Felder im aktiven Dokument aktualisiert.

Sub UpdateDateFields() 
 Dim fldDate As Field 
 
 For Each fldDate In ActiveDocument.Fields 
 If InStr(1, fldDate.Code, "Date", 1) Then fldDate.Update 
 Next fldDate 
End Sub

Sie können eine Auflistung durchlaufen, wenn Sie feststellen möchten, ob ein Element vorhanden ist. Der folgende Code zeigt beispielsweise eine Meldung an, wenn ein AutoText-Eintrag mit dem Namen "Filename" Teil der AutoTextEntries-Auflistung ist.

Sub FindAutoTextEntry() 
 Dim atxtEntry As AutoTextEntry 
 
 For Each atxtEntry In ActiveDocument.AttachedTemplate.AutoTextEntries 
 If atxtEntry.Name = "Filename" Then _ 
 MsgBox "The Filename AutoText entry exists." 
 Next atxtEntry 
End Sub

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.