Determinare il valore RGB di un colore

Nicola usa molto i colori nei suoi fogli di lavoro. Sa che può generare un colore in base ad un valore RGB numerico. Nicola vorrebbe fare il contrario: determinare un valore RGB. Si chiede se esiste un modo per restituire (tramite funzione o macro) il valore RGB del colore utilizzato per riempire una cella (Nicola vuole il colore effettivo applicato alla cella, non, ad esempio, un colore come quello imposto da una formattazione condizionale).

Excel non include una funzione per farlo, ma se devi solo controllare i valori RGB di una singola cella, il modo più semplice è seguire questi passaggi:

  1. Seleziona la cella formattata con il colore che desideri controllare.
  2. Visualizza la scheda Home della barra multifunzione.
  3. Fai clic sulla freccia in basso sul lato destro dello strumento Colore riempimento, nel gruppo Carattere. Excel visualizza una piccola tavolozza di colori e alcune altre opzioni.
  4. Scegli Altri colori…. Excel visualizza la finestra di dialogo Colori.
  5. Assicurati che sia visualizzata la scheda Personalizzati.
Determinare il valore RGB di un colore 1
  1. Nella parte inferiore della finestra di dialogo puoi vedere i singoli valori per i componenti rosso, verde e blu del colore nella cella.
  2. Fai clic su OK al termine.

Se hai bisogno di ottenere i valori più spesso, creare la tua funzione definita dall’utente (UDF) è la strada da percorrere. La funzione che usi dipende da cosa vuoi che sia effettivamente restituito nel tuo foglio di lavoro. Ad esempio, se desideri restituire il tradizionale codice esadecimale a sei caratteri per i colori RGB, utilizza la seguente macro molto semplice:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Questa macro esamina il colore di riempimento di qualsiasi cella a cui fai riferimento, inserisce i valori esadecimali per il colore nell’ordine corretto e restituisce la stringa in Excel. Per utilizzare la funzione devi semplicemente invocarla, nel tuo foglio di lavoro, con una cella referenziata in questo modo:

=getRGB1(B4)

Tuttavia, potresti non volere i tradizionali codici esadecimali per i colori RGB. Se vuoi ottenere i valori decimali per ciascuno dei colori, la seguente macro li restituisce:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Richiamata allo stesso modo della macro getRGB1, questa versione restituisce una stringa come “R=255, V=204, B=0”. Puoi anche modificare ulteriormente la macro in modo che restituisca un unico valore, in base ad un parametro impostato:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Per utilizzare la macro è sufficiente aggiungere un secondo parametro alla funzione utilizzata nel foglio di lavoro, specificando cosa si desidera:

=getRGB3(B4;1)

Se il secondo parametro è 1, la funzione restituisce solo il valore rosso. Se si specifica un secondo parametro di 2, viene restituito il valore verde e 3 restituisce il valore blu. Qualsiasi altro valore per il secondo parametro (o se lo ometti del tutto) restituisce il valore decimale completo del colore di riempimento.

La stessa macro può anche essere scritta in maniera più concisa:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Oppure, ancora di più come nel seguente esempio:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Tags: , , , , , , , ,

Ti è stato utile?