Note: The other languages of the website are Google-translated. Back to English

Come eliminare il foglio se il nome del foglio non è in un elenco?

Diciamo, ho un foglio di lavoro che contiene un elenco di nomi di fogli all'interno della cartella di lavoro nella colonna A come mostrato nell'immagine sottostante, e alcuni determinati nomi di fogli nella cartella di lavoro non sono nell'elenco, ora, voglio eliminare i fogli che non lo sono nell'elenco della colonna A. Come posso risolvere questa attività in Excel in modo rapido e semplice?

doc elimina foglio non in elenco 1

Elimina i fogli che non sono in un elenco specifico con il codice VBA


freccia blu freccia destra Elimina i fogli che non sono in un elenco specifico con il codice VBA

Normalmente, puoi controllare i nomi dei fogli uno per uno ed eliminare quelli che non sono nell'elenco dei nomi dei fogli. Ma qui posso parlare di un codice VBA per affrontarlo. Si prega di fare quanto segue:

1. Vai al foglio di lavoro che contiene l'elenco dei nomi dei fogli, quindi tieni premuto il tasto ALT + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Quindi fare clic inserire > Moduloe incolla il codice seguente nel file Modulo Finestra.

Codice VBA: elimina i fogli che non sono in un elenco

Sub Deletenotinlist()
'Updateby Extendoffice
    Dim i As Long
    Dim cnt As Long
    Dim xWb, actWs As Worksheet
    Set actWs = ThisWorkbook.ActiveSheet
    cnt = 0
    Application.DisplayAlerts = False
    For i = Sheets.Count To 1 Step -1
        If Not ThisWorkbook.Sheets(i) Is actWs Then
            xWb = Application.Match(Sheets(i).Name, actWs.Range("A2:A6"), 0)
            If IsError(xWb) Then
                ThisWorkbook.Sheets(i).Delete
                cnt = cnt + 1
            End If
        End If
    Next
    Application.DisplayAlerts = True
    If cnt = 0 Then
        MsgBox "Not find the sheets to be seleted", vbInformation, "Kutools for Excel"
    Else
        MsgBox "Have deleted" & cnt & "worksheets"
    End If
End Sub

Note:: Nel codice sopra, A2: A6 è il riferimento di cella che contiene i nomi dei fogli, puoi cambiarlo secondo le tue necessità.

3. E poi premere F5 tasto per eseguire questo codice, i fogli che non sono nell'elenco sono stati cancellati contemporaneamente, vedi screenshot:

doc elimina foglio non in elenco 2


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
fondo officetab
Commenti (4)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ciao,


Il mio elenco di nomi di fogli sono solo numeri e questo codice elimina ancora tutti i nomi di fogli che sono solo numeri, ad esempio ho fogli denominati "1", "2" e "3" e il mio elenco è solo 1 e 3, invece di eliminare il foglio "2" cancella tutti i fogli numerati. Se il nome del foglio contiene lettere, il codice funziona correttamente. Qualcuno può aiutare?!
Questo commento è stato fatto dal moderatore sul sito
Come potrebbe essere modificato in modo che se il nome del foglio contiene il testo nell'elenco non lo elimina piuttosto che se corrisponde.
Questo commento è stato fatto dal moderatore sul sito
Ciao,

Il codice ha cancellato tutti i fogli anche quelli inclusi nell'elenco.

Potresti suggerire una soluzione?
Questo commento è stato fatto dal moderatore sul sito
Ciao, nelavai
Il codice funziona bene nella mia cartella di lavoro, potresti caricare uno screenshot del tuo problema o un allegato della tua cartella di lavoro qui? In questo modo, possiamo aiutare a verificare il problema.
.
Non ci sono ancora commenti pubblicati qui

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL