Andrew sa come cambiare manualmente il colore delle schede del foglio di lavoro.

Tuttavia, vorrebbe un modo per modificare il colore della scheda in base a un valore in una cella del foglio di lavoro.

Per fare ciò, dovrai utilizzare una macro. La chiave è che vuoi cambiare la proprietà Color dell’oggetto Tab, in questo modo:

ActiveSheet.Tab.Color = vbRed

La logica che usi per arrivare al punto di fare una tale assegnazione di colore dipende da cosa vuoi fare e quando lo vuoi fare. Supponendo che tu voglia cambiare il colore della scheda in base a ciò che è nella cella A1, potresti usare una macro come la seguente:

Private Sub Worksheet_Change(ByVal Target As Range)

MyVal = Range("A1").Text

With ActiveSheet.Tab         Select Case MyVal             Case "0"

.Color = vbBlack             Case "1"

.Color = vbRed             Case "2"

.Color = vbGreen             Case "3"

.Color = vbYellow             Case "4"

.Color = vbBlue             Case "5"

.Color = vbMagenta             Case "6"

.Color = vbCyan             Case "7"

.Color = vbWhite             Case Else                 .ColorIndex = xlColorIndexNone         End Select     End With End Sub

È necessario aggiungere la macro al codice del foglio di lavoro di cui si desidera modificare la scheda. (Fare clic con il pulsante destro del mouse sulla scheda del foglio e scegliere Visualizza codice dal menu di scelta rapida. Incollare il codice nella finestra del codice.) La macro acquisisce tutto ciò che si trova nella cella A1 e quindi utilizza una struttura Seleziona caso per modificare il colore della scheda. La logica cambia il colore se A1 contiene da 0 a 7. Se c’è qualcos’altro (o niente), la proprietà ColorIndex viene utilizzata per riportare il colore della scheda al suo valore predefinito.

La macro potrebbe essere modificata in modo che ciò che verifica sia una stringa di testo (come “Nero”, “Rosso”, ecc.) O qualche parola chiave (come “Basso” o “Alto”). È anche possibile utilizzare designazioni di colore diverse con la proprietà Color, come la funzione RGB:

.Color = RGB(255, 0, 0)

_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 (13138) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 e Excel in Office 365.