Patrick si chiede se esiste un modo per spostare il movimento della cella a destra su un foglio di lavoro in una cartella di lavoro e in basso su un altro foglio di lavoro nella stessa cartella di lavoro. L’unica cosa che riesce a trovare è un’impostazione globale per tutti i fogli di lavoro nella cartella di lavoro.

Patrick ha ragione; questa impostazione è qualcosa che viene gestita a livello globale in Excel. È possibile modificare l’impostazione seguendo questi passaggi:

  1. Visualizza la finestra di dialogo Opzioni di Excel. (In Excel 2007, fare clic sul pulsante Office e quindi su Opzioni di Excel. In Excel 2010 o versione successiva, visualizzare la scheda File della barra multifunzione e quindi fare clic su Opzioni.)

  2. A sinistra della finestra di dialogo fare clic su Avanzate. (Vedi figura 1.)

  3. In Opzioni di modifica, assicurati che la casella di controllo “Dopo aver premuto Invio, sposta la selezione” sia selezionata. (Dovrebbe essere selezionato, per impostazione predefinita.)

  4. Utilizzando l’elenco a discesa Direzione, modificare la direzione come desiderato.

  5. Fare clic su OK.

Questo cambia la direzione del movimento per tutte le cartelle di lavoro aperte in Excel. Se desideri che il movimento vari per un singolo foglio di lavoro, puoi farlo tramite l’uso di pochi gestori di eventi. Due di questi sono allegati al foglio di lavoro che si desidera gestire in modo diverso; basta fare clic con il pulsante destro del mouse sulla scheda del foglio di lavoro e selezionare Codice dal menu contestuale risultante. È quindi possibile incollare quanto segue nella finestra del codice:

Private Sub Worksheet_Activate()

Application.MoveAfterReturnDirection = xlToRight End Sub
Private Sub Worksheet_Deactivate()

Application.MoveAfterReturnDirection = xlDown End Sub

Questi gestori di eventi vengono attivati, rispettivamente, quando il foglio di lavoro viene attivato e quando si disattiva il foglio di lavoro selezionando un foglio di lavoro diverso. Notare che all’attivazione, la direzione è impostata su xlToRight, il che significa che il movimento verrà eseguito a destra. Quando il foglio di lavoro è disattivato, la direzione è impostata su xlDown, che si presume sia la direzione predefinita.

Avrai anche bisogno di un terzo gestore di eventi; questo dovrebbe essere aggiunto al modulo ThisWorkbook:

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.MoveAfterReturnDirection = xlDown End Sub

Questo è necessario perché se chiudi Excel mentre “sposta a destra”

foglio di lavoro è attivo, quindi la direzione del movimento rimane impostata su xlToRight. Ciò significa che la prossima volta che avvii Excel, quella diventerà la direzione predefinita. Includendo il gestore dell’evento BeforeClose, ci si assicura che il valore predefinito sia impostato come dovrebbe essere.

C’è solo un piccolo potenziale trucco con questo approccio: quando apri per la prima volta una cartella di lavoro, l’evento Activate non viene attivato per qualsiasi foglio di lavoro venga visualizzato per primo. Ciò significa che se “vai a destra”

il foglio di lavoro viene visualizzato per la cartella di lavoro, per impostazione predefinita, il movimento non verrà modificato in xlToRight; sarà ancora impostato sul valore predefinito, che presumibilmente è xlDown. Per forzare l’esecuzione del gestore eventi, è necessario visualizzare un foglio di lavoro diverso nella cartella di lavoro e quindi tornare al foglio di lavoro originale. Se preferisci non farlo manualmente, potresti aggiungere un quarto gestore di eventi, anche questo nel modulo ThisWorkbook:

Private Sub Workbook_Open()

Sheets("Sheet2").Select     Sheets("Sheet1").Select End Sub

Questa macro seleziona il foglio di lavoro denominato Sheet2 e quindi seleziona immediatamente quello denominato Sheet1. Ovviamente dovresti cambiare i nomi dei fogli di lavoro per riflettere quelli appropriati per la tua cartella di lavoro — assicurati solo che l’ultimo foglio di lavoro selezionato sia “sposta a destra”

foglio di lavoro.

_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 (13640) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 e Excel in Office 365.