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.

conteggio-fogli-del-raccoglitore-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 macroRegistratore di macroVisual Basic EditorManuale 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.

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *