Come creare un elenco di valori unici tra più fogli di lavoro in Excel?
Quando si lavora con dati distribuiti su più fogli di lavoro in Excel, potrebbe essere necessario consolidare le informazioni e generare un elenco di valori unici. Anche se Excel non offre una funzionalità integrata diretta per questo compito, esistono diversi metodi per raggiungere l'obiettivo. Questo articolo vi guiderà attraverso tre approcci pratici per creare un elenco di valori unici da più fogli di lavoro.
Crea un elenco di valori unici da più fogli di lavoro
Crea un elenco di valori unici da più fogli di lavoro con il codice VBA
Per elencare tutti i valori unici da tutti i fogli di lavoro, il seguente codice VBA potrebbe esservi utile, procedete come segue:
1. Tenete premuti i tasti "ALT + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Cliccate su "Inserisci" > "Modulo", e incollate la seguente macro nella finestra del Modulo.
Codice VBA: Crea un elenco di valori unici da più fogli di lavoro:
Sub SheelsUniqueValues()
Dim xObjNewWS As Worksheet
Dim xObjWS As Worksheet
Dim xStrAddress As String
Dim xIntRox As Long
Dim xIntN As Long
Dim xFNum As Integer
Dim xMaxC, xColumn As Integer
Dim xR As Range
xStrName = "Unique value"
Application.ScreenUpdating = False
xMaxC = 0
Application.DisplayAlerts = False
For Each xObjWS In Sheets
If xObjWS.Name = xStrName Then
xObjWS.Delete
Exit For
End If
Next
Application.DisplayAlerts = True
For xFNum = 1 To Sheets.Count
xColumn = Sheets(xFNum).Cells.Find(What:="*", after:=[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
If xMaxC < xColumn Then
xMaxC = xColumn
End If
Next xFNum
Application.DisplayAlerts = True
Set xObjNewWS = Sheets.Add(after:=Sheets(Sheets.Count))
xObjNewWS.Name = xStrName
For xColumn = 1 To xMaxC
xIntN = 1
For xFNum = 1 To Sheets.Count - 1
Set xR = Sheets(xFNum).Columns(xColumn)
If TypeName(Sheets(xFNum).Columns(xColumn).Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious)) <> "Nothing" Then
xIntRox = xR.Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Sheets(xFNum).Range(Cells(1, xColumn).Address & ":" & Cells(xIntRox, xColumn).Address).Copy
Cells(xIntN, xColumn).PasteSpecial xlValues
xIntN = xIntRox + xIntN + 1
End If
Next xFNum
If xIntRox - 1 > 0 Then
xIntRox = xIntN - 1
xStrAddress = Cells(1, xColumn).Address & ":" & Cells(xIntRox, xColumn).Address
Range(xStrAddress).AdvancedFilter Action:=xlFilterInPlace, Unique:=True
Range(xStrAddress).Copy
Cells(1, xColumn + 1).PasteSpecial xlValues
Range(xStrAddress).AdvancedFilter Action:=xlFilterInPlace, Unique:=False
Columns(xColumn).Delete
Range(xStrAddress).Sort key1:=Cells(1, xColumn), Header:=xlNo
End If
Next xColumn
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
3. Dopo aver incollato il codice sopra, premete F5 per eseguire il codice, e verrà creato un nuovo foglio di lavoro denominato Valore Unico e i nomi univoci della colonna A di tutti i fogli verranno elencati come mostrato nello screenshot seguente:
Crea un elenco di valori unici da più fogli di lavoro con Assistente AI di KUTOOLS
In questa sezione, vi mostreremo come creare facilmente un elenco di valori unici da più fogli di lavoro utilizzando Assistente AI di KUTOOLS.
Clicca su "Kutools" > "AI Assistant" per aprire il riquadro "Assistente AI di KUTOOLS", nel riquadro, effettua le seguenti operazioni:
- Digita la richiesta nella casella di chat, ad esempio:
Estrai tutti i valori unici nella Colonna A da tutti i fogli di lavoro di questa cartella di lavoro ed elenca i valori unici in un nuovo foglio - Poi, premi il tasto Invio o clicca sul pulsante "Invia". Kutools AI analizzerà la domanda, al termine, clicca sul pulsante "Esegui", tutti i valori unici provenienti da più fogli verranno visualizzati in un nuovo foglio, guarda la demo:
Crea un elenco di valori unici da più fogli di lavoro con formula (Excel 365)
Se desideri creare un elenco di valori unici da più fogli di lavoro in Excel utilizzando una formula, puoi farlo combinando funzioni di array dinamico come UNIQUE e VSTACK in Excel 365.
Inserisci la seguente formula in una cella vuota, quindi premi il tasto Invio per estrarre i valori unici in una singola colonna da più fogli. Guarda lo screenshot:
=UNIQUE(VSTACK(Sheet1!A1:A11, Sheet2!A1:A11, Sheet3!A1:A11, Sheet4!A1:A11))
- VSTACK: Combina più intervalli (ad esempio, Sheet1!A1:A11, Sheet2!A1:A11, Sheet3!A1:A11, Sheet3!A1:A11) in un unico array verticale.
- UNIQUE: Filtra i duplicati e restituisce solo i valori unici dall'elenco combinato.
- A1:A11: Regola l'intervallo per includere il tuo intervallo di dati effettivo.
In questo articolo, abbiamo esplorato tre metodi efficaci per creare un elenco di valori unici da più fogli di lavoro in Excel. Ogni metodo ha i suoi vantaggi, consentendoti di scegliere quello che meglio si adatta alla tua versione di Excel, al tuo livello di competenza e alle tue esigenze specifiche. Se sei interessato a esplorare altri suggerimenti e trucchi di Excel, il nostro sito web offre migliaia di tutorial.
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- 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, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!