Oltre a utilizzare valori e testo nei fogli di lavoro, Excel consente di utilizzare i colori per ravvivare o fornire significato ai dati. Se usi i colori nei tuoi fogli di lavoro, potresti chiederti se esiste un modo per contare il numero di celle formattate con un particolare colore di riempimento. Non esiste una funzione intrinseca in Excel per eseguire tale attività, ma puoi certamente crearne una con una funzione definita dall’utente. Quello che segue è un esempio di uno che conterà il numero di celle in un intervallo formattate con un colore di riempimento giallo:

Function CountYellow(MyRange As Range)

Dim iCount As Integer     Application.Volatile     iCount = 0     For Each cell In MyRange         If cell.Interior.ColorIndex = 6 Then             iCount = iCount + 1         End If     Next cell     CountYellow = iCount End Function

Per utilizzare la funzione, tutto ciò che devi fare è utilizzare una formula come la seguente in una cella del tuo foglio di lavoro:

=CountYellow(A1:A99)

Questo esempio restituisce il numero di celle nell’intervallo A1: A99 che utilizzano il colore di riempimento giallo.

Notare nella funzione CountYellow che le celle vengono esaminate per vedere se la proprietà ColorIndex è uguale a 6. In altre codifiche VBA potresti essere abituato a vedere costanti quasi inglesi che definiscono i colori. In questo caso, le normali costanti di colore non funzionano. La proprietà ColorIndex funziona invece in base a una serie di valori di indice in una particolare tavolozza di colori. Se sei interessato a vedere i vari valori di indice utilizzati per i diversi colori, dai un’occhiata al file della guida in linea di VBA per la proprietà ColorIndex.

Una volta che sai come spostarti tra le celle in un intervallo in questo modo, è facile eseguire altri tipi di operazioni in base al colore utilizzato per riempire le celle nell’intervallo. Ad esempio, invece di contare semplicemente il numero di celle, potresti sommare i valori delle celle nell’intervallo, oppure potresti trovare la media dei valori nell’intervallo. Tutto quello che devi fare è apportare le modifiche appropriate al codice nella struttura più interna If …​ End If.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (1978) si applica a Microsoft Excel 97, 2000, 2002 e 2003.