Come contare i fogli utilizzando vba?
In Excel, se hai molti fogli, puoi utilizzare il codice VBA per contarli rapidamente invece di contarli manualmente o utilizzare qualsiasi formula. Quindi, nell’articolo vedremo diversi modi per contare i fogli di una cartella di lavoro.
Contare i fogli nella cartella di lavoro attiva
Ecco il codice che devi utilizzare per contare il foglio della cartella di lavoro attivo.
ThisWorkbook.Sheets.Count
In questo codice, per prima cosa hai fatto riferimento alla cartella di lavoro attiva utilizzando “ThisWorkbook” e fai riferimento a tutti i fogli, alla fine utilizza il metodo count per contare tutti i fogli. E se vuoi contare i fogli di lavoro invece dei fogli, usa il seguente codice.
ThisWorkbook.Worksheets.Count
Link utili: Esegui una macro – Registratore di macro – Visual Basic Editor – Manuale delle macro personali
Contare i fogli di un’altra cartella di lavoro
È possibile utilizzare il nome della cartella di lavoro per fare riferimento ad essa e quindi contare i fogli in essa contenuti. Supponiamo di voler contare i fogli nella cartella di lavoro “Libro1”.
Ecco il codice.
Workbooks("sample-file.xlsx").Sheets.Count
Questo codice ti dà il numero di fogli che hai nella cartella di lavoro “sample-file.xlsx”. C’è una cosa che devi prendere: questo raccoglitore deve essere aperto.
Conta i fogli di tutti i raccoglitori aperti
È possibile avere più cartelle di lavoro aperte contemporaneamente e contare tutti i fogli in tutte queste cartelle di lavoro.
Sub vba_loop_all_sheets() Dim wb As Workbook Dim i As Long For Each wb In Application.Workbooks If wb.Name <> "PERSONAL.XLSB" Then i = i + wb.Sheets.Count End If Next wb MsgBox "Total sheets in all the open workbooks: " & i End Sub
Contare i fogli di un raccoglitore chiuso
Ora abbiamo del codice qui che fa riferimento alla cartella di lavoro salvata sul desktop del mio sistema. Quando eseguo questo codice, apre questa cartella di lavoro sul retro e conta i fogli in essa contenuti, quindi aggiunge il conteggio alla cella A1.
Sub vba_count_sheets() Dim wb As Workbook Application.DisplayAlerts = False Set wb = Workbooks.Open("C:UsersDellDesktopsample-file.xlsx") ThisWorkbook.Sheets(1).Range("A1").Value _ = wb.Sheets.Count wb.Close SaveChanges:=True Application.DisplayAlerts = True End Sub
Abbiamo disabilitato gli avvisi di visualizzazione per l’apertura e la chiusura del file nel backend.
Tutorial correlati
- CANCELLARE un intero foglio utilizzando VBA in Excel
- Copia e sposta un foglio in Excel utilizzando VBA
- ELIMINA un FOGLIO utilizzando VBA in Excel
- Nascondi e mostra un foglio utilizzando VBA in Excel
- PROTEGGI e NON PROTEGGI un foglio utilizzando VBA in Excel
- RINOMINARE un foglio utilizzando VBA in Excel