Come ordinare automaticamente fogli e schede Excel

Come ordinare automaticamente fogli e schede Excel

Excel non è solo uno strumento per la conservazione dei dati e della contabilità aziendale. Il suo potere sta nel fatto che viene utilizzato per classificare e gestire quasi tutto in modo semplice e veloce. Possiamo creare agende, quadranti di lavoro, rubriche, modelli di fatture, record di presenze ... Tuttavia, Excel non ci consente di organizzare i fogli della cartella di lavoro, cosa molto utile quando si lavora con libri lunghi. Ma possiamo ordinare automaticamente le schede di Excel con una macro nel codice Visual Basic . Spieghiamo come farlo passo dopo passo.

Le parole "macro nel codice Visual Basic" possono intimidire, ma tutto è più facile di quanto sembri. Una macro è un piccolo programma che esegue una serie di azioni per noi in Excel e serve per automatizzare le attività ripetitive . Le macro sono scritte in codice Visual Basic for Applications (o VBA), un linguaggio di programmazione che consente di accedere ed estendere le funzioni di Excel.

L'editor di Visual Basic

Per creare la nostra macro, dobbiamo aprire qualsiasi cartella di lavoro in Excel e più schede ha, meglio è.

Ordina le schede di Excel

Per aprire l'editor VBA, utilizziamo la scorciatoia da tastiera Alt + F11 . Una volta visualizzata la finestra dell'editor, cerchiamo una particolare cartella di lavoro di Excel, chiamata Personal.xls . Questo libro ha la proprietà che qualunque cosa facciamo avrà effetto su tutte le cartelle di lavoro . Cioè, se creiamo una macro, possiamo usarla ogni volta che vogliamo.

Editor di macro

Se non riesci a trovare il libro personale, non preoccuparti. Esci dall'editor, apri la scheda Visualizzazione Excel , apri il menu Macro e seleziona Registra macro . Salvare la macro nel proprio libro macro personale e avviare la registrazione. Quindi, apri di nuovo il menu Macro e interrompi la registrazione. Hai già il tuo libro "speciale".

Crea macro in Excel

Ora abbiamo tutto pronto per creare un nuovo modulo . Apriamo l'editor VBA con Alt + F11 , selezioniamo il libro Personal.xls, quindi facciamo clic su Inserisci> Modulo . Posizioniamo il cursore nella finestra del modulo e scriviamo il seguente codice:

Sub SortSheets_Ascendant ()

Per a = 1 To Sheets.Count

Per s = a + 1 To Sheets.Count

Se UCase (Sheets (a) .Name)> UCase (Sheets (s) .Name) Allora

Fogli. Sposta prima: = Fogli (a)

Finisci se

Avanti s

Accanto a

End Sub

Chiudiamo la finestra e la macro sarà stata salvata automaticamente. Resta solo da verificare che funzioni. Apriamo il libro di cui vogliamo ordinare le schede, andiamo su Visualizza e facciamo clic su Macro , oppure premiamo la scorciatoia da tastiera Alt + F8 . Facciamo doppio clic su SortSheets_Ascendant e le schede del libro verranno posizionate in ordine alfabetico in un istante .

Ordina alfabeticamente le schede di Excel

Quando chiudiamo Excel, il programma ci chiederà se vogliamo salvare le modifiche apportate alle macro. Accettiamo e la nostra macro verrà archiviata per essere utilizzata con il libro che vogliamo.

Ordina i fogli in ordine decrescente

Con alcune piccole modifiche al codice, possiamo ottenere l'effetto inverso: ordinare le schede in ordine alfabetico decrescente . Ripetiamo il processo per la creazione della macro e questa volta inseriamo il seguente codice:

Sub SortSheets_Descending ()

Per a = 1 To Sheets.Count

Per s = a + 1 To Sheets.Count

Se UCase (Sheets (a) .Name) <UCase (Sheets (s) .Name) Allora

Fogli. Sposta prima: = Fogli (a)

Finisci se

Avanti s

Accanto a

End Sub

Ci sono solo due varianti. Il primo, ovviamente, è il nome della macro. Il secondo è il passaggio da> a <nella quarta riga di codice. Ciò significa che l'ordinamento dei fogli nel libro cambierà direzione . Ora quando fai clic su Visualizza> Macro (o sul collegamento Alt + F8 ), vedrai le due macro appena create. Fare doppio clic su SortSheets_Descending e verificare con soddisfazione il suo effetto.

Ordina i fogli Excel in modo discendente

Salvando le modifiche all'uscita da Excel, avremo queste due macro disponibili in qualsiasi momento . Ci faranno risparmiare un sacco di tempo e fatica quando gestiamo le schede delle cartelle di lavoro di Excel che sono particolarmente voluminose.