Attivazione di un evento quando un foglio di lavoro è disattivato (Microsoft Excel)
John deve assicurarsi che alcune azioni siano state eseguite (informazioni aggiunte, ecc.) Prima che un utente lasci un foglio di lavoro. Si chiede se c’è una sorta di evento macro come WorksheetBeforeDeactivate.
In realtà ci sono due eventi che potresti usare per questo scopo. Puoi usare l’evento SheetDeactivate nel modulo ThisWorkbook per attivare azioni ogni volta che un utente lascia un foglio di lavoro nella cartella di lavoro:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object) MsgBox Prompt:="You just left sheet:" & Sh.Name End Sub
Se vuoi attivare azioni solo quando lasciano un particolare foglio di lavoro, puoi usare l’evento Disattivazione nell’oggetto Foglio di lavoro:
Private Sub Worksheet_Deactivate() ' sheet specific code goes here End Sub
Dovresti sapere, tuttavia, che in entrambi i casi il foglio di lavoro a cui l’utente sta scegliendo di andare sarà il foglio di lavoro attivo al termine dell’evento. Se vuoi costringere l’utente a rimanere nel foglio di lavoro, devi rimetterlo specificamente nel foglio di lavoro, in questo modo:
Private Sub Worksheet_Deactivate() ' sheet specific code goes here Sheets("Sheet1").Select End Sub
Ciò presuppone, ovviamente, che il nome del foglio di lavoro su cui si desidera che l’utente rimanga è Foglio1.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (7728) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: