Condividi tramite


Procedura: elencare tutti i fogli di lavoro in una cartella di lavoro

Aggiornamento: novembre 2007

Si applica a

Le informazioni contenute in questo argomento riguardano solo i progetti Visual Studio Tools per Office e le versioni di Microsoft Office specificati.

Tipo di progetto

  • Progetti a livello di documento

  • Progetti a livello di applicazione

Versione Microsoft Office

  • Excel 2003

  • Excel 2007

Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazione.

La classe Microsoft.Office.Interop.Excel.Workbook fornisce un oggetto Microsoft.Office.Interop.Excel.Worksheets. Questo oggetto contiene un insieme di tutti gli oggetti Microsoft.Office.Interop.Excel.Worksheet presenti nella cartella di lavoro.

Per elencare tutti i fogli di lavoro presenti in una cartella di lavoro in una personalizzazione a livello di documento

  • Scorrere l'insieme Worksheets e inviare il nome di ciascun foglio a un offset di cella determinato da un controllo NamedRange.

    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++;
        }
    }
    

Per elencare tutti i fogli di lavoro presenti in una cartella di lavoro in un componente aggiuntivo a livello di applicazione

  • Scorrere l'insieme Worksheets e inviare il nome di ciascun foglio a un offset di cella determinato da un oggetto Microsoft.Office.Interop.Excel.Range.

    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++;
        }
    }
    

Vedere anche

Attività

Procedura: aggiungere nuovi fogli di lavoro alle cartelle di lavoro

Procedura: spostare fogli di lavoro all'interno di cartelle di lavoro

Concetti

Utilizzo dei fogli di lavoro

Accesso globale agli oggetti nei progetti Visual Studio Tools per Office