Makro zum Durchlaufen aller Arbeitsblätter in einer Arbeitsmappe

Gilt für: Visual Basic 2010 Express

Zusammenfassung


Dieser Artikel enthält ein Microsoft Visual Basic for Applications-Makro (Subprozedur), das alle Arbeitsblätter in der aktiven Arbeitsmappe durchläuft. Dieses Makro zeigt auch den Namen jedes Arbeitsblatt an.

Weitere Informationen


Stellt Microsoft Programmierbeispiele zur Veranschaulichung, ohne ausdrücklich oder konkludent. Dies beinhaltet, ist jedoch nicht beschränkt auf, konkludente Gewährleistungen der Tauglichkeit oder Eignung für einen bestimmten Zweck. Dieser Artikel setzt voraus, dass Sie mit der von Beispielen verwendeten Programmiersprache und den Tools, die zum Erstellen und Debuggen von Prozeduren verwendet werden, vertraut sind. Microsoft-Supportmitarbeiter können bei der Erläuterung der Funktionalität bestimmter Prozeduren helfen, sie werden jedoch diese Beispiele nicht verändern um eine erweiterte Funktionalität aufzuzeigen oder Prozeduren entwickeln, die Ihren Anforderungen entsprechen. Um das Beispielmakro auszuprobieren, gehen Sie folgendermaßen vor:
  1. Geben Sie den folgenden Makrocode in ein neues Modulblatt ein.
          Sub WorksheetLoop()         Dim WS_Count As Integer         Dim I As Integer         ' Set WS_Count equal to the number of worksheets in the active         ' workbook.         WS_Count = ActiveWorkbook.Worksheets.Count         ' Begin the loop.         For I = 1 To WS_Count            ' Insert your code here.            ' The following line shows how to reference a sheet within            ' the loop by displaying the worksheet name in a dialog box.            MsgBox ActiveWorkbook.Worksheets(I).Name         Next I      End Sub
  2. Um das Makro auszuführen, positionieren Sie die Einfügemarke in der Zeile "Sub WorksheetLoop()", und drücken Sie F5.
Makros der Arbeitsmappe durchlaufen und eine Meldung angezeigt mit anderen Arbeitsblattnamen bei jedem Durchlaufen der Schleife ausgeführt. Beachten Sie, dass dieses Makro nur Namen von Arbeitsblättern anzeigt; Es zeigt nicht die Namen anderer Arten von Blättern in der Arbeitsmappe. Sie können auch alle Arbeitsblätter in der Arbeitsmappe durchlaufen mithilfe einer "For Each"-Schleife.
  1. Geben Sie den folgenden Makrocode in ein neues Modulblatt ein.
          Sub WorksheetLoop2()         ' Declare Current as a worksheet object variable.         Dim Current As Worksheet         ' Loop through all of the worksheets in the active workbook.         For Each Current In Worksheets            ' Insert your code here.            ' This line displays the worksheet name in a message box.            MsgBox Current.Name         Next      End Sub
  2. Um das Makro auszuführen, positionieren Sie die Einfügemarke in der Zeile "Sub WorksheetLoop2()", und drücken Sie F5.
Dieses Makro funktioniert identisch wie das Makro WorksheetLoop, außer dass es eine andere Art der Schleife verwendet, um alle Arbeitsblätter in der aktiven Arbeitsmappe zu durchlaufen.

Informationsquellen


Weitere Informationen zum Anzeigen der Hilfe zu Visual Basic for Applications finden Sie im folgenden Artikel der Microsoft Knowledge Base:
163435 VBA: Ressourcen für die Programmierung für Visual Basic for Applications
226118 OFF2000: Ressourcen für die Programmierung für Visual Basic for Applications