Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

somma celle con carattere colorato

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

somma celle con carattere colorato

Postdi aaa » 18/07/07 10:59

Ciao a tutti,
come faccio, tra i dati di una colonna, a sommare solo quelli aventi un determinato colore?
Il colore può essere apposto manualmente ovvero attraverso una formattazione condizionale (preferisco questa seconda opportunità).
Grazie a tutti
aaa
Utente Junior
 
Post: 22
Iscritto il: 07/07/03 17:07

Sponsor
 

Postdi Anthony47 » 18/07/07 23:22

Il colore prodotto dalla formattazione condizionale non puo’ essere intercettato (almeno non in modo semplice); quindi va utilizzata la stessa clausola utilizzata per la formattazione condizionale.
In pratica:
-replichi la formula della formattazione condizionale in una colonna libera (es. in colonna Z) per produrre un risultato 1 (colorato) o 0 (non colorato).
-poi usi somma.se; es, se i dati sono in A1:A100, usi la formula =SOMMA.SE(Z1:Z100;1;A1:A100)

Se in Z hai calcolato 1, 2, 3 (per diverse colorazioni), adatta la formula ai valori da "contare.se".
Fai sapere se e’ sufficiente così? Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi aaa » 24/07/07 14:03

ricordo bene di aver letto in un forum che era possibile ma....non ricordo più dove
cmq il tuo suggerimento è valido e lo sto utilizzando
d'altra parte è il risultato che conta
;)
thanks
aaa
Utente Junior
 
Post: 22
Iscritto il: 07/07/03 17:07

Postdi Anthony47 » 24/07/07 16:16

Se ritrovi il forum, postane i riferimenti; io dal sito di uno dei guru di excel (credo Chip Pearson) io ho imparato a farlo con 70-80 righe di vba.

Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi Statix » 25/07/07 07:01

Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Postdi Anthony47 » 25/07/07 10:57

Anthony47 ha scritto:Il colore prodotto dalla formattazione condizionale non puo’ essere intercettato (almeno non in modo semplice)

Confermo quanto detto.
Le istruzioni .Font.ColorIndex e .Interior.ColorIndex riportano (o impostano) il colore dato dalla formattazione normale, NON della formattazione condizionale. Cioe' se formatto in Rosso (color index = 3) e con la formattazione condizionale applico il Verde (color index = 4), quelle istruzioni ti diranno sempre 3, cioe' Rosso.

Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi maxmula » 26/07/07 13:45

Ciao,
leggo solo ora questo post... e mi inserisco perchè la cosa interessa anche me.

C'è anche la possibilità di fare:

Codice: Seleziona tutto
   colore=Range("b2").Interior.Color




A differenza di Colorindex restituisce un valore univoco del colore (ColorIndex dà la posizione nella tavolozza di excel, che però è definibile dall'utente e può non essere la stessa su un altro PC)


Il valore restituito è un numero intero (esempio: 16737843).
Fin qui sono arrivato e per fare dei confronti può andare.
Ora la mia domanda è: si può risalire ai valori dei singoli componenti RGB di questo colore? Questo sarebbe utile per stabilire una corrispondenza con dei colori da usare all'interno di uno userform...

Ciao!
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Postdi Anthony47 » 26/07/07 16:56

Ciao MAX,
anche .color restituisce l’ indice di colore applicato dalla formattazione standard, cioe’ non recepisce le eventuali formattazioni condizionali.
L’ indice e’ restituito (o applicato) nella forma di indice R-G-B; i gradi dei singoli colori possono essere calcolati cosi’:
-l’ intero di indice/65536 e’ il colore Blu
-l’ intero di Resto della prima operazione/256 e’ il Green
-il resto della seconda operazione e’ il Red

Non so se e’ sufficiente per quanto ti proponi, ma e’ quello che so…
Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13894
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi maxmula » 26/07/07 23:14

In effetti sembra funzionare.

Direi che serve allo scopo: quello che voglio è riportare in un controllo dentro uno userform lo stesso colore usato nella cella corrispondente.

Si tratta di un elenco di patch: grigio=installata ma non caricata, giallo = installata e caricata in modo provvisorio, verde = caricata in modo permanente.
Le celle contengono delle stringhe provenienti da un report in formato testo, il colore è impostato da una macro macro che elabora il file di input in modo da risparmiare una preziosissima casella: sono 7 insiemi (il sistema ha 7 processori), ognuno ha 5 campi e con il colore riesco ad usare 4 colonne... il che mi consente di visualizzare tutto in una sola schermata in modo piuttosto intuitivo!

Come al solito... Grazie!
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Postdi maxmula » 26/07/07 23:56

Ho fatto ancora qualche indagine... co la calcolatrice di Windows.


Si apre Calc (la calcolatrice di Windows, appunto), o un programma analogo e si imposta come calcolatrice scientifica, assicurandosi che stia funzionando in modo "DEC" (base decimale).

1) Si prende il valore restituito da interior.colorindex (esempio: Arancione => 26367 e lo si riporta in Calc.

2) Si converte in BINARIO (basta< cliccare su BIN). Il valore di cui sopra diventa: 110011011111111

3) Si divide il numero in 3 gruppi di 8 bit ciascuno. In questo caso il numero 110011011111111 va letto come 00000000 | 01100110 | 11111111

- Il gruppo più a destra (11111111) corrisponde al ROSSO (Decimale:255)
- Il gruppo centrale corrisponde al VERDE (decimale: 102)

- Il gruppo di sinistra corrisponde al BLU (decimale:0)

La tua formula fa appunto la stessa conversione, operando solo in base decimale (a questo punto, nel form, è sufficiente fare MIOCONTROLLO.BackColor = RGB(rosso,verde,blu) per ottenere il risultato voluto.


Ariciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34


Torna a Applicazioni Office Windows


Topic correlati a "somma celle con carattere colorato":


Chi c’è in linea

Visitano il forum: Anthony47 e 21 ospiti