Gewusst wie: Auflisten aller Arbeitsblätter in einer Arbeitsmappe
Aktualisiert: November 2007
Betrifft |
---|
Die Informationen in diesem Thema gelten nur für die angegebenen Visual Studio Tools for Office-Projekte und Versionen von Microsoft Office. Projekttyp
Microsoft Office-Version
Weitere Informationen finden Sie unter Verfügbare Features nach Anwendung und Projekttyp. |
Die Microsoft.Office.Interop.Excel.Workbook-Klasse stellt ein Microsoft.Office.Interop.Excel.Worksheets-Objekt bereit. Dieses Objekt enthält eine Auflistung aller Microsoft.Office.Interop.Excel.Worksheet-Objekte in der Arbeitsmappe.
So listen Sie alle vorhandenen Arbeitsblätter einer Arbeitsmappe in einer Anpassung auf Dokumentenebene auf.
Durchlaufen Sie die Worksheets-Auflistung, und senden Sie mit einem NamedRange-Steuerelement den Namen jedes Blattes an ein Zellenoffset.
Private Sub ListSheets() Dim index As Integer = 0 Dim NamedRange1 As Microsoft.Office.Tools.Excel.NamedRange = _ Globals.Sheet1.Controls.AddNamedRange( _ Globals.Sheet1.Range("A1"), "NamedRange1") For Each displayWorksheet As Excel.Worksheet In Globals.ThisWorkbook.Worksheets NamedRange1.Offset(index, 0).Value2 = displayWorksheet.Name index += 1 Next displayWorksheet End Sub
private void ListSheets() { int index = 0; Microsoft.Office.Tools.Excel.NamedRange NamedRange1 = Globals.Sheet1.Controls.AddNamedRange( Globals.Sheet1.Range["A1", missing], "NamedRange1"); foreach (Excel.Worksheet displayWorksheet in Globals.ThisWorkbook.Worksheets) { NamedRange1.Offset[index, 0].Value2 = displayWorksheet.Name; index++; } }
So listen Sie alle vorhandenen Arbeitsblätter einer Arbeitsmappe in einem Add-In auf Anwendungsebene auf.
Durchlaufen Sie die Worksheets-Auflistung und senden Sie mit einem Microsoft.Office.Interop.Excel.Range-Objekt den Namen jedes Blatts an ein Zellenoffset.
Private Sub ListSheets() Dim index As Integer = 0 Dim rng As Excel.Range = Me.Application.Range("A1") For Each displayWorksheet As Excel.Worksheet In Me.Application.Worksheets rng.Offset(index, 0).Value2 = displayWorksheet.Name index += 1 Next displayWorksheet End Sub
private void ListSheets() { int index = 0; Excel.Range rng = this.Application.get_Range("A1", missing); foreach (Excel.Worksheet displayWorksheet in this.Application.Worksheets) { rng.get_Offset(index, 0).Value2 = displayWorksheet.Name; index++; } }
Siehe auch
Aufgaben
Gewusst wie: Hinzufügen neuer Arbeitsblätter zu Arbeitsmappen
Gewusst wie: Verschieben von Arbeitsblättern in Arbeitsmappen
Konzepte
Globaler Zugriff auf eigene Objekte in Visual Studio Tools for Office-Projekte