Sommario:
In questo tutorial, discuteremo principalmente diversi modi per attivare la cartella di lavoro in Excel. Oltre a ciò, imparerai anche quale sia la necessità di attivare la cartella di lavoro in Excel e le cose da controllare prima di attivare la cartella di lavoro di Excel.
Qual è la necessità di attivare la cartella di lavoro in Excel?
Supponiamo di avere 5 fogli di lavoro e di dover svolgere alcune attività nei fogli 3. Per eseguire qualsiasi attività su quel foglio specifico, è necessario attivarla.
Bene, ci sono diversi modi attraverso i quali puoi attivare la cartella di lavoro in Excel.
Cose da controllare prima di attivare una cartella di lavoro
Se stai tentando di attivare una cartella di lavoro di questo tipo che non è aperta, VBA genererà l’errore. Per risolvere questo problema, controlla prima il nome della cartella di lavoro e poi lo attiva.
Sub vba_activate_workbook()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name = “Book3.xlsx” Then
wb.Activate
MsgBox “Workbook found and activated”
Exit Sub
End If
Next wb
MsgBox “Not found”
End Sub
Bene, usando il codice sopra indicato, puoi facilmente specificare il nome della cartella di lavoro. Dopodiché, controllerà quella specifica cartella di lavoro in tutte le cartelle di lavoro aperte. Una volta che la cartella di lavoro è stata recuperata, la attiverà.
Appunti
- Quando si utilizza il nome della cartella di lavoro, assicurarsi di utilizzare l’estensione file corretta
- Se si desidera attivare una cartella di lavoro non ancora salvata, è necessario utilizzare solo il nome di quella cartella di lavoro senza aggiungere il suffisso all’estensione del file.
Come attivare la cartella di lavoro in Excel?
Trucco 1 # Workbook.Activate metodo
È possibile utilizzare questo metodo per attivare un foglio di lavoro o una cartella di lavoro solo se si è abbastanza sicuri del nome della cartella di lavoro. Supponiamo che il nome della tua cartella di lavoro Excel che devi attivare sia “Book2” e che abbia un foglio con il nome “Sheet1”.
Quindi, utilizzando il seguente codice, è possibile selezionare la cartella di lavoro e il foglio richiesti e attivarli utilizzando Excel VBA.
Sintassi
espressione.Attivare
Qui l’espressione è una variabile che rappresenta l’oggetto Cartella di lavoro di Excel.
Osservazioni
Questo attiva il metodo della cartella di lavoro non eseguirà alcuna macro Auto_Activate o Auto_Deactivate allegata alla cartella di lavoro di Excel. Per eseguire queste macro, è necessario utilizzare il metodo RunAutoMacros.
Codice da utilizzare:
Sub Activate_Workbook()
‘Activate Workbook
Workbooks(“Book2.xls”).Activate
‘Activate Worksheet
Workbooks(“Book2.xls”).Sheets(“Sheet1”).Activate
End Sub
Come usare:
- Per prima cosa, apri la cartella di lavoro di Excel.
- Successivamente, premere il pulsante Alt + F11 dalla tastiera. Questo aprirà l’editor VBA.
- Ora vai alla scheda Inserisci dalla barra dei menu e inserisci un nuovo modulo.
- Copiare il codice precedente e quindi incollarlo in questa finestra del codice aperta.
- Premere il pulsante F5 dalla tastiera per visualizzare l’output.
- Dopodiché, salva questo file come cartella di lavoro abilitata per le macro.
Trucco 2 # Attiva cartella di lavoro o il foglio di lavoro usando l’oggetto
Un altro metodo per attivare la cartella di lavoro in Excel consiste nell’usare l’oggetto. Per questo, è necessario creare prima un oggetto per il foglio di lavoro e la cartella di lavoro. Successivamente assegna la cartella di lavoro a qualsiasi oggetto e scegli la cartella di lavoro con VBA per eseguire le seguenti procedure utilizzando le macro di Excel.
Codice:
Sub Activate_Workbook_Using_Object()
‘Variable Declaration
Dim WrkBk As Workbook
Dim WrkSht As Worksheet
‘Create Object for Workbook
Set WrkBk = Workbooks.Add
‘Create Object for Worksheet
Set WrkSht = WrkBk.Sheets(“Sheet1”)
‘Activate Sheet
WrkSht.Activate
End Sub
Spiegazione:
- In quanto sopra, ho dichiarato 2 oggetti per il foglio di lavoro e la cartella di lavoro.
- Aggiunta una nuova cartella di lavoro e assegnazione all’oggetto cartella di lavoro.
- Inoltre, impostare il foglio di lavoro sull’oggetto foglio di lavoro.
- Attivato il foglio di lavoro Excel facendo riferimento all’oggetto del foglio di lavoro.
Istruzioni:
- Per prima cosa, apri la cartella di lavoro di Excel.
- Successivamente, premere il pulsante Alt + F11 dalla tastiera. Questo aprirà l’editor VBA.
- Ora vai alla scheda Inserisci dalla barra dei menu e inserisci un nuovo modulo.
- Copiare il codice precedente e quindi incollarlo in questa finestra del codice aperta.
- Premere il pulsante F5 dalla tastiera per visualizzare l’output.
- Dopodiché, salva questo file come cartella di lavoro abilitata per le macro.
Trucco 3 # Attiva una cartella di lavoro usando il numero
Se hai aperto più cartelle di lavoro, tutte quelle cartelle di lavoro di Excel sono componenti della raccolta di cartelle di lavoro. Ogni cartella di lavoro in questa raccolta ha un numero che ti consente di fare riferimento facilmente nel metodo di attivazione. Ecco il codice che puoi usare.
Sub vba_activate_workbook()
Workbooks(2).Activate
End Sub
Se nel caso in cui si stia tentando di attivare tale cartella di lavoro utilizzando un numero che non esiste, il codice VBA genererà il pedice fuori dall’intervallo: errore di runtime “9”.
Trucco 4 # Attiva la cartella di lavoro usando la proprietà ThisWorkbook
Un altro metodo per attivare la cartella di lavoro di Excel consiste nell’usare la proprietà ThisWorkbook.
Supponiamo di aver aperto 5 cartelle di lavoro contemporaneamente ma di lavorare solo su “Book1.xlsm”. Pertanto, quando si esegue il codice indicato di seguito, si attiverà solo “Book1.xlsm”.
Sub vba_activate_workbook ()
ThisWorkbook.Activar
End Sub
Trucco 5 # VBA per selezionare la cartella di lavoro o il foglio di lavoro in Excel
Hai più fogli di lavoro nella tua cartella di lavoro Excel, quindi puoi effettuare una selezione per il foglio che ti serve usando VBA.
Puoi anche scegliere la cartella di lavoro richiesta nel caso in cui vengano aperte più cartelle di lavoro.
Bene, è un buon trucco per impostare il foglio di lavoro o la cartella di lavoro richiesti sull’oggetto e fare riferimento ad esso ogni volta che ne hai bisogno. Funziona benissimo per accedere alla cartella di lavoro o al foglio di lavoro senza attivarlo o selezionarlo.
Codice:
Sub Activate_Workbook_Using_Object()
‘Variable Declaration
Dim wbAs Workbook
Dim wsAs Worksheet
‘Select any Workbook and assign to an Object
Set wb= Workbooks(“Book1.xlsm”)
‘Create Object for Worksheet
Set ws= wb.Sheets(“SheetName”)
‘VBA to Select or Activate the required Workbook
wb.Activate
‘VBA to Select or Activate the required Sheet
ws.Activate
End Sub
Differenza tra cartella di lavoro attiva e questacartella di lavoro in Excel VBA
Molti programmatori VBA usano molto spesso il testo ThisWorkbook e Active Workbook nella loro codifica.
Essendo uno studente o un lettore, è molto importante conoscere le basi tra questi due. Ecco alcune delle differenze delineate, quindi dai un’occhiata.
Cartella di lavoro attiva:
- La cartella di lavoro attiva non è obbligatoriamente la cartella di lavoro in cui si sta scrivendo il codice in quel momento. Se vengono aperte più cartelle di lavoro, ma solo la cartella di lavoro attualmente visualizzata sullo schermo viene conteggiata come cartella di lavoro attiva.
- L’uso di active nella codifica VBA genera numerosi errori e confusione. Poiché non sappiamo quale cartella di lavoro è attiva fino a quando ea meno che non menzioniamo il nome della cartella di lavoro appena prima della parola Cartella di lavoro attiva.
Questo libro di lavoro:
- Considerando che ThisWorkbook è necessariamente quella cartella di lavoro in cui stai scrivendo il codice.
- Questa cartella di lavoro non va mai storta perché non importa quale cartella di lavoro è attiva. Richiede il riferimento alla cartella di lavoro nella sezione del codice.
Verdetto finale:
Puoi optare per uno dei metodi sopra elencati per attivare la cartella di lavoro di Excel. Secondo me, l’utilizzo del metodo di attivazione in VBA per scegliere il foglio di lavoro o la cartella di lavoro richiesti tramite la codifica VBA ed eseguire le attività richieste è il più semplice.
Se conosci altri modi per attivare cartella di lavoro in Excel, condividila con noi nella nostra sezione commenti.
