Come eliminare i fogli in Excel (scorciatoie + VBA)

Quando lavori con Excel, trascorri la maggior parte del tuo tempo sul foglio di lavoro (che è l'area che ha tutte le celle e tutto ciò che accade lì).

Lavorare in modo efficiente con Excel significa anche dover lavorare con più fogli di lavoro all'interno della stessa cartella di lavoro.

Excel ti consente di aggiungere facilmente più fogli di lavoro nella cartella di lavoro, allo stesso tempo puoi anche eliminare facilmente questi fogli di lavoro.

In questo tutorial di Excel, ti mostrerò come farlo rapidamente eliminare fogli di lavoro in Excel. Coprirei più metodi come l'utilizzo di scorciatoie da tastiera, opzioni nella barra multifunzione e VBA per eliminare fogli in Excel.

Nota: in questo tutorial, userò le parole "foglio" e "foglio di lavoro" in modo intercambiabile. Ma per dirti la differenza, Fogli includerebbe fogli di lavoro e fogli grafici, ma poiché i fogli grafici non sono così comunemente usati, ogni volta che uso la parola Foglio lo considero come un foglio di lavoro.

Elimina i fogli utilizzando le opzioni del tasto destro del mouse

Il modo più semplice per eliminare un foglio di lavoro in Excel è utilizzare questa semplice tecnica del mouse a due clic.

Supponiamo di avere un foglio di lavoro con tre fogli come mostrato di seguito e di voler eliminare Sheet1.

Di seguito sono riportati i passaggi per eseguire questa operazione:

  1. Fare clic con il tasto destro sul foglio che si desidera eliminare
  2. Fare clic sull'opzione di eliminazione
  3. Nel prompt visualizzato, fai clic sul pulsante Elimina

Puoi anche usare la tecnica di cui sopra su fogli che non sono nemmeno il foglio attivo. Ad esempio, se sono attualmente su Sheet1 e voglio eliminare Shee3, posso semplicemente fare clic con il pulsante destro del mouse su Sheet3 ed eliminarlo.

Puoi anche usare la stessa tecnica per eliminare più fogli contemporaneamente.

Ad esempio, se voglio eliminare Foglio2 e Foglio3 in una volta sola, posso tenere premuto il tasto Ctrl e fare clic su Foglio2 e Foglio3 uno per uno (tenendo ancora premuto il tasto Ctrl).

Tenendo premuto il tasto Ctrl, Excel mi consentirebbe di selezionare più fogli contemporaneamente. Una volta che ho finito di selezionare i fogli desiderati, posso lasciare il tasto di controllo. ora posso fare clic con il pulsante destro del mouse su una delle schede dei fogli selezionati e fare clic su Elimina.

Ricorda che non puoi eliminare tutti i fogli di lavoro in una cartella di lavoro in Excel. ci deve sempre essere almeno un foglio nella cartella di lavoro. se provi a eliminare tutti i fogli di lavoro (o l'unico foglio attivo), vedrai un messaggio che ti dirà che non sei autorizzato a farlo

Scorciatoie da tastiera per eliminare i fogli di lavoro

Non c'è una ma due scorciatoie da tastiera e mezzo che puoi usare per eliminare i fogli di lavoro in Excel.

Dico due e mezzo perché una delle scorciatoie usa il mouse oltre che la tastiera (ed è comunque un modo più veloce per farlo)

Scorciatoia da tastiera ibrida per eliminare il foglio

Tasto destro + D

Per eliminare il foglio oi fogli di lavoro selezionati, fare clic con il pulsante destro del mouse e quindi premere il tasto D sulla tastiera.

Personalmente, lo trovo molto più veloce del semplice utilizzo del mouse per eliminare un foglio di lavoro (come ho spiegato nella sezione precedente)

Scorciatoia da tastiera normale per eliminare il foglio

ALT + H + D + S

Se preferisci abbandonare il mouse e utilizzare solo la tastiera, la scorciatoia da tastiera sopra eliminerà il foglio attivo o i fogli selezionati.

È necessario premere questi tasti in successione (cioè uno dopo l'altro)

Anche se può sembrare una scorciatoia da tastiera leggermente più lunga, una volta che ci si abitua è veloce come qualsiasi altra tecnica trattata in questo tutorial

Scorciatoia da tastiera legacy per eliminare i fogli di lavoro

Come tutti gli altri, anche Excel ha un passato e non è così carino. Sto parlando dell'era dello stile pre-nastro.

Per motivi di compatibilità, Excel consente ancora ad alcune di quelle vecchie scorciatoie da tastiera di funzionare nelle versioni più recenti. e in molti casi, quelle scorciatoie precedenti sono più brevi e migliori.

Fortunatamente, esiste una scorciatoia da tastiera legacy che funziona per eliminare i fogli di lavoro in Excel

ALT + E + L

Eliminazione di ActiveSheet utilizzando VBA

Quando si tratta di eliminare un foglio o un paio di fogli di lavoro, è meglio utilizzare i metodi sopra menzionati.

Sebbene VBA possa automatizzare il processo, è utile quando devi ripetere l'attività più volte.

Come vedrai, con VBA puoi fare molto di più quando si tratta di eliminare fogli di lavoro in Excel.

Quindi ti porterò a casi d'uso più avanzati, ma prima vediamo come eliminare semplicemente il foglio di lavoro attivo utilizzando VBA.

Di seguito è riportato il codice VBA che eliminerà il foglio attivo:

Sub DeleteSheet() ActiveSheet.Delete End Sub

Se lo stai utilizzando nella finestra immediata, puoi semplicemente utilizzare la riga sottostante:

ActiveSheet.Elimina

Quando utilizzi il codice sopra per eliminare il foglio attivo, Excel ti mostrerà un messaggio in cui dovresti fare clic sul pulsante Elimina per confermare l'azione.

Eliminazione del foglio senza visualizzare la richiesta di conferma

La finestra del messaggio di richiesta di conferma è una funzione utile che ti assicura di avere la possibilità di annullare la cancellazione del foglio nel caso in cui tu abbia eseguito il codice accidentalmente/erroneamente

Ma se sai già cosa stai facendo, ricevere questo messaggio può essere piuttosto irritante.

quindi ecco il codice VBA che assicurerebbe che i fogli vengano eliminati ma non visualizzi alcuna finestra di messaggio di richiesta di conferma.

Sub DeleteSheet() Application.DisplayAlerts = False ActiveSheet.Delete Application.DisplayAlerts = True End Sub

Nel codice sopra, ho impostato la proprietà Application.DisplayAlerts su false, il che significa che Excel non mostrerà alcun avviso di visualizzazione mentre il codice è in esecuzione.

È anche molto importante assicurarsi di riportarlo su true alla fine del codice per ripristinare la funzionalità (come puoi vedere che ho fatto nel codice sopra).

Attenzione: quando si imposta la proprietà Application.DisplayAlerts su false, Excel eliminerà semplicemente il foglio di lavoro e non sarà possibile ripristinarlo. quindi ti consiglio di fare una copia di backup prima di usare questo tipo di codice.

Eliminazione del foglio per nome (se esiste) utilizzando VBA

VBA consente di automatizzare il processo di eliminazione di un foglio di lavoro specifico (su più fogli di lavoro) in base al nome del foglio.

Ad esempio, se hai un foglio di lavoro con il nome "Vendite", puoi utilizzare il codice seguente per eliminarlo:

Sub DeleteSheetByName() Sheets("Sales").Elimina End Sub

Questo codice eliminerebbe solo il foglio che ha il nome Sales.

È utile quando hai una cartella di lavoro con molti fogli e non vuoi setacciare tutti i fogli di lavoro, trova quello con il nome vendite ed eliminalo manualmente.

Con il codice sopra, non importa quanti fogli di lavoro ci sono nella cartella di lavoro, cancellerebbe semplicemente il foglio di lavoro delle vendite.

E poiché non ho modificato la proprietà Application.DisplayAlert, verrà visualizzato un messaggio in cui è necessario fare clic sul pulsante Elimina per confermare la durata del foglio di vendita.

Nel caso in cui desideri eliminare più fogli in base al loro nome, puoi farlo anche tu.

Ad esempio, il codice seguente eliminerebbe i fogli con il nome Sales, Marketing, Finance:

Sub EliminaFogliPerNome() Fogli("Vendite").Elimina Fogli("Marketing").Elimina Fogli("Finanza").Elimina End Sub

Eliminazione di tutti i fogli tranne il foglio attivo utilizzando VBA

Se hai una cartella di lavoro con più fogli di lavoro e desideri eliminare tutti i fogli di lavoro tranne il foglio attivo, VBA è probabilmente uno dei metodi migliori per farlo.

Di seguito è riportato il codice VBA che eliminerebbe tutti i fogli tranne il foglio attivo nella cartella di lavoro.

Sub DeleteSheetByName() Dim ws As Worksheet Application.DisplayAlerts = False For Each ws In Sheets If ws.Name ActiveSheet.Name Then ws.Delete End If Next ws Application.DisplayAlerts = True End Sub

Nota che ho detto che la proprietà Application.DisplayAlerts cade all'inizio del codice, poiché non voglio vedere un prompt per ogni foglio che viene eliminato.

Elimina tutti i fogli con una stringa di testo specifica nel nome

Questo è un caso d'uso leggermente più avanzato dell'utilizzo efficace di VBA durante l'eliminazione dei fogli di lavoro.

Supponiamo di avere una cartella di lavoro con molti fogli di lavoro diversi e di voler eliminare tutti i fogli di lavoro che contengono una stringa di testo specifica, quindi puoi farlo facilmente utilizzando VBA.

Ad esempio, di seguito ho una cartella di lavoro in cui desidero eliminare tutti i fogli di lavoro che contengono la stringa di testo "Vendite".

Di seguito è riportato il codice VBA che lo farebbe:

Sub DeleteSheetByName() Dim ws As Worksheet Application.DisplayAlerts = False For each ws In Sheets If ws.Name Like "*" & "Sales" & "*" Then MsgBox ws.Name ws.Delete End If Next ws Application.DisplayAlerts = True End Sub

Il codice precedente utilizza l'istruzione if-then per esaminare tutti i fogli di lavoro nella cartella di lavoro. Controlla il nome di tutti questi fogli di lavoro e se il nome contiene la parola "Vendite", quel foglio di lavoro viene eliminato.

Se vuoi cambiare il codice e cercare qualsiasi altra stringa di testo, puoi cambiarla nella quinta riga del codice sopra.

Nota anche che ho usato un asterisco (*), che è un carattere jolly, su entrambi i lati della stringa di testo che stiamo cercando nel nome del foglio di lavoro. Ciò garantisce che, indipendentemente da dove appare la stringa nel nome del foglio di lavoro, verrà comunque eliminata.

È inoltre possibile modificare il codice per assicurarsi che vengano eliminati solo i fogli di lavoro in cui viene visualizzata la stringa di testo all'inizio del nome del foglio di lavoro.

Ad esempio, se si desidera eliminare quei fogli in cui compare all'inizio il termine vendite, utilizzare il codice seguente nella quinta riga.

Se ws.Name Like "*" & "Sales" & "*" Then

Qui, ho usato il carattere jolly solo dopo la bevanda del testo e non prima. Ciò assicurerà che durante il controllo dei nomi del foglio di lavoro, solo quelli soddisfino i criteri in cui il termine "Vendite" si trova all'inizio del nome.

Quindi questi sono alcuni dei metodi che puoi usare quando vuoi eliminare fogli in Excel. Nella maggior parte dei casi, puoi farlo facilmente direttamente nel foglio di lavoro utilizzando il mouse o la scorciatoia da tastiera.

Ma nel caso tu abbia una cartella di lavoro pesante con molti fogli di lavoro e desideri eliminare rapidamente tipi specifici di fogli, puoi anche utilizzare VBA.

Spero che tu abbia trovato utile questo tutorial.

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave