Come utilizzare un foglio di calcolo excel in vba?

In VBA, l’oggetto foglio di lavoro rappresenta un singolo foglio di lavoro che fa parte della raccolta di fogli di lavoro (o fogli) della cartella di lavoro. Utilizzando l’oggetto foglio di lavoro, puoi fare riferimento al foglio di lavoro nel codice VBA e fare riferimento a un foglio di lavoro, puoi anche accedere alle proprietà, ai metodi e agli eventi ad esso correlati.

Ecco una rapida panoramica della posizione di un foglio di lavoro nella gerarchia degli oggetti di Excel.

Applicazione Cartella di lavoro Fogli di lavoro Foglio di lavoro

In questo tutorial impareremo come utilizzare e fare riferimento a un foglio di lavoro in Excel utilizzando il codice VBA.

Link utili: Esegui una macroRegistratore di macroVisual Basic EditorManuale delle macro personali

Fogli contro fogli di calcolo

Cominciamo dall’inizio. Questo è importante per comprendere la differenza tra un foglio di calcolo e un foglio. In Excel sono disponibili tipi di fogli che è possibile inserire in una cartella di lavoro e un foglio di lavoro è uno di questi tipi. Come puoi vedere nell’istantanea qui sotto quando inserisci un nuovo foglio, Excel ti chiede di selezionare il tipo di foglio.

Ecco una cosa da capire: quando usi la parola “fogli”, ti riferisci a tutti i fogli (fogli di calcolo, fogli macro e fogli grafici), ma quando usi la parola “foglio di lavoro”, ti riferisci solo ai fogli di calcolo ( vedi Anche ).

foglio contro fogli di lavoro

Accedi a un foglio di lavoro (foglio) utilizzando VBA

VBA ti offre diversi modi per accedere a un foglio di lavoro da una cartella di lavoro e esamineremo diversi modi per farlo in seguito.

1. Fare riferimento a un foglio utilizzando il nome

Ogni foglio ha il suo nome per identificarlo e puoi anche usarlo per fare riferimento a quel foglio. Supponiamo che tu voglia fare riferimento al “Foglio1”, il codice sarebbe:

fare riferimento a un foglio utilizzando il nome
 Sheets(“Sheet1”) Worksheets(“Sheet1”)

I due codici sopra riportati si riferiscono al “Foglio1”.

2. Fare riferimento al foglio utilizzando il numero

È inoltre possibile utilizzare un numero di foglio per fare riferimento ad esso. Supponiamo che se un foglio si trova nella quinta posizione nella cartella di lavoro, puoi utilizzare quel numero per fare riferimento ad esso.

 Sheets (5) Worksheets (5)

Ora sopra ci sono due righe di codice che funzionano in due modi diversi. La prima riga si riferisce al 5° foglio e la seconda al 5° foglio di lavoro della cartella di lavoro.

fare riferimento a un foglio utilizzando un numero

3. Fare riferimento all’ActiveSheet

Se un foglio è già attivo, puoi fare riferimento ad esso utilizzando la parola chiave “Activesheet” invece del suo nome.

 ActiveSheet

Se vuoi svolgere un’attività in ActiveSheet, puoi utilizzare l’oggetto “Activesheet”, ma se non lo usi, VBA eseguirà comunque l’attività nel foglio attivo.

Leggi: seleziona un intervallo utilizzando VBA

4. Fare riferimento a un foglio utilizzando il nome della finestra del codice

Ogni foglio ha la sua finestra di codice ed esiste un nome per questa finestra di codice. Di solito un utente può modificare il nome del foglio dalla scheda, ma il nome che hai nella finestra del codice non può essere modificato a meno che non lo fai dalle proprietà.

Apri Visual Basic Editor dalla scheda Sviluppatore e nella sezione delle proprietà puoi vedere il nome del foglio selezionato.

fare riferimento a un foglio utilizzando il codice

E puoi anche cambiare questo nome dalla sezione delle proprietà.

utilizzando-nome-finestra-codice

Ora puoi fare riferimento ad esso utilizzando il nome della finestra del codice.

 mySheet

5. Fare riferimento a Fogli multipli

Puoi anche fare riferimento a più fogli contemporaneamente utilizzando una singola riga di codice. Per questo puoi usare un array, proprio come il codice seguente.

 Sheets(Array("Sheet1", "Sheet2"))

Questo codice si riferisce a “Foglio1” e “Foglio2”, ma c’è una cosa che devi capire quando fai riferimento a più fogli: esistono alcuni metodi e proprietà che non puoi utilizzare.

6. Fare riferimento al foglio in un’altra cartella di lavoro

Un foglio di lavoro o un foglio fa parte della raccolta di fogli di lavoro in una cartella di lavoro e se desideri fare riferimento a un foglio specifico diverso dalla cartella di lavoro attiva, devi prima fare riferimento a quella cartella di lavoro.

 Workbooks("Book1").Sheets("Sheet1")

Per eseguire questo codice è necessario avere “Libro1” aperto.

Proprietà, metodi ed eventi correlati a un foglio o foglio di lavoro

In VBA, ogni oggetto Excel ha proprietà, metodi ed eventi che puoi utilizzare e, allo stesso modo, puoi accedere alle proprietà e ai metodi che ne derivano. Una volta specificato un foglio di lavoro, digita un punto (.) e otterrai l’elenco.

eventi-collegati-con-un-foglio

In questo elenco, tutte le icone in cui puoi vedere una mano sono proprietà e dove hai un mattone verde sono metodi.

Esempio di proprietà

Supponiamo che tu voglia cambiare il colore della scheda del foglio di lavoro. In questo caso è possibile utilizzare la proprietà TAB del foglio di lavoro.

 mySheet.Tab.ThemeColor = xlThemeColorAccent2

Nella riga di codice sopra, hai la proprietà tab e un’altra proprietà del colore del tema per cambiare il colore della scheda del foglio di lavoro.

Metodo di esempio

Allo stesso modo, puoi utilizzare i metodi forniti con i fogli di calcolo. Uno dei metodi più comuni è il metodo “Seleziona” che puoi utilizzare per selezionare un foglio.

 mySheet.Select

Nel momento in cui esegui questo codice, seleziona “mySheet” nella cartella di lavoro attiva.

Evento di esempio

Alcuni eventi sono associati a un foglio di lavoro. Ad esempio, quando attivi un foglio, si tratta di un evento e, allo stesso modo, quando modifichi qualcosa nel foglio. Vedere il codice seguente in cui è necessario eseguire il codice quando si verifica un evento (modifica nel foglio di lavoro).

evento-esempio
 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range("A1").Value = Range("A1").Value + 1 End Sub

Questo codice inserisce un valore nella cella A1 del foglio ogni volta che apporti una modifica nel foglio di lavoro.

Dichiarare un oggetto del foglio di lavoro

Puoi anche dichiarare una variabile come foglio di lavoro, il che semplifica l’utilizzo di quel foglio di lavoro nel codice VBA. Utilizzare prima la parola chiave DIM, quindi il nome della variabile. Successivamente, specifica il tipo di oggetto come Foglio di lavoro.

dichiarare un oggetto foglio di calcolo

Aggiungi un commento

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