Skip to main content

Come eseguire una ricerca verticale e restituire il colore di sfondo insieme al valore cercato in Excel?

Author: Siluvia Last Modified: 2025-05-29

Supponiamo che tu abbia una tabella come mostrato nello screenshot sottostante. Ora vuoi verificare se un valore specifico è presente nella colonna A e quindi restituire il valore corrispondente insieme al suo colore di sfondo nella colonna C. Come fare? Il metodo descritto nell'articolo può aiutarti a risolvere il problema.

A screenshot of a sample Excel table to perform VLOOKUP with background color return

Eseguire una ricerca verticale e restituire il colore di sfondo con il valore cercato tramite una funzione definita dall'utente


Eseguire una ricerca verticale e restituire il colore di sfondo con il valore cercato tramite una funzione definita dall'utente

Procedi come segue per cercare un valore e restituire il suo valore corrispondente insieme al colore di sfondo in Excel.

1. Nel foglio di lavoro che contiene il valore che desideri cercare, fai clic con il tasto destro sulla scheda del foglio e seleziona Visualizza codice dal menu contestuale. Vedi screenshot:

A screenshot showing the right-click context menu on an Excel sheet tab with 'View Code' option highlighted

2. Nella finestra di Microsoft Visual Basic for Applications che si apre, copia il seguente codice VBA nella finestra del Codice.

Codice VBA 1: Eseguire una ricerca verticale e restituire il colore di sfondo con il valore cercato

Sub Worksheet_Change(ByVal Target As Range)
    Dim I As Long
    Dim xKeys As Long
    Dim xDicStr As String
    On Error Resume Next
    Application.ScreenUpdating = False
    xKeys = UBound(xDic.Keys)
    If xKeys >= 0 Then
        For I = 0 To UBound(xDic.Keys)
            xDicStr = xDic.Items(I)
            If xDicStr <> "" Then
                Range(xDic.Keys(I)).Interior.Color = _
                Range(xDic.Items(I)).Interior.Color
            Else
                Range(xDic.Keys(I)).Interior.Color = xlNone
            End If
        Next
        Set xDic = Nothing
    End If
    Application.ScreenUpdating = True
End Sub

3. Quindi fai clic su Inserisci > Modulo e copia il seguente codice VBA 2 nella finestra del Modulo.

Codice VBA 2: Eseguire una ricerca verticale e restituire il colore di sfondo con il valore cercato

Public xDic As New Dictionary
Function LookupKeepColor (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
    Dim xFindCell As Range
    On Error Resume Next
    Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
    If xFindCell Is Nothing Then
        LookupKeepColor = ""
        xDic.Add Application.Caller.Address, ""
    Else
        LookupKeepColor = xFindCell.Offset(0, xCol - 1).Value
        xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address
    End If
End Function

4. Dopo aver inserito i due codici, fai clic su Strumenti > Riferimenti. Quindi seleziona la casella Microsoft Script Runtime nella finestra di dialogo Riferimenti – VBAProject. Vedi screenshot:

A screenshot of the References dialog box in VBA with 'Microsoft Script Runtime' option checked

5. Premi i tasti Alt + Q per uscire dalla finestra di Microsoft Visual Basic for Applications e tornare al foglio di lavoro.

6. Seleziona una cella vuota adiacente al valore da cercare, quindi inserisci la formula =LookupKeepColor(E2,$A$1:$C$8,3) nella Barra delle formule (F), e poi premi il tasto Invio.

A screenshot of the LookupKeepColor formula entered in Excel with the color retained in the result

Nota: Nella formula, E2 contiene il valore che desideri cercare, $A$1:$C$8 è l'intervallo della tabella e il numero 3 indica che il valore corrispondente che desideri restituire si trova nella terza colonna della tabella. Modificali secondo necessità.

7. Mantieni selezionata la prima cella risultante e trascina la maniglia di riempimento verso il basso per ottenere tutti i risultati insieme al loro colore di sfondo. Vedi screenshot.

A screenshot showing the final VLOOKUP results with background colors retained


Articoli correlati:

I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l'analisi dei dati grazie a: Esecuzione Intelligente | Genera Codice | Crea Formule Personalizzate | Analizza Dati e Genera Grafici | Richiama Funzioni avanzate di Kutools
Funzionalità popolari: Trova, evidenzia o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda...
Super RICERCA.VERT: Ricerca VERT con criteri multipli | Ricerca VERT con valori multipli | Ricerca su più fogli | Corrispondenza approssimativa...
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa multi-selezione...
Gestione Colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Attiva/disattiva la visibilità delle colonne nascoste | Confronta intervalli e colonne...
Funzionalità in evidenza: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestione Cartella di lavoro e Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email tramite elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...) ...
Top15 set di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule pratiche (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti di unione e divisione (Unione avanzata righe, Dividi celle, ...) | ... e molto altro

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!