Note: The other languages of the website are Google-translated. Back to English
English English

Come contare o sommare le celle in base al colore della cella nel foglio di Google?

Conteggio o somma dei valori delle celle in base al colore di sfondo della cella specifico per ottenere il risultato come mostrato nella seguente schermata. In questo articolo, parlerò di come risolvere questa attività nel foglio di Google e in Microsoft Excel.

Contare i valori delle celle in base al colore della cella con lo script nel foglio di Google

Somma i valori delle celle in base al colore della cella con lo script nel foglio di Google

Contare o sommare i valori delle celle sul colore della cella con Kutools per Excel in Microsoft Excel


Contare i valori delle celle in base al colore della cella con lo script nel foglio di Google

Il seguente script può aiutarti a contare i valori delle celle in base al colore della cella specifico, per favore fai come segue:

1. Clic Strumenti > Editor di script, vedi screenshot:

2. Nella finestra del progetto aperta, fare clic su Compila il > New > File di script per aprire una finestra del codice, vedi screenshot:

3. E nella casella del messaggio, inserisci un nome per questo codice di script, vedi screenshot:

4. Clic OK e quindi copia e incolla il seguente codice per sostituire il codice originale nel modulo del codice, vedi screenshot:

function countColoredCells(countRange,colorRef) {
  var activeRg = SpreadsheetApp.getActiveRange();
  var activeSht = SpreadsheetApp.getActiveSheet();
  var activeformula = activeRg.getFormula();
  var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
  var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
  var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
  var BackGround = activeSht.getRange(colorRefAddress).getBackground();
  var countCells = 0;
  for (var i = 0; i < backGrounds.length; i++)
    for (var k = 0; k < backGrounds[i].length; k++)
      if ( backGrounds[i][k] == BackGround )
        countCells = countCells + 1;
  return countCells;
};

5. Quindi salva questo codice di script e torna indietro al foglio, inserisci questa formula: = countcoloredcells (A1: E11, A1) in una cella vuota, quindi premere Entra tasto per ottenere il risultato calcolato. Vedi screenshot:

Note:: In questa formula: A1: E11 è l'intervallo di dati che desideri utilizzare, A1 è la cella riempita con un colore specifico che vuoi contare.

6. Ripeti la formula sopra per contare altre celle colorate specifiche.


Somma i valori delle celle in base al colore della cella con lo script nel foglio di Google

Per sommare i valori delle celle con un colore di cella specifico, applica il codice dello script sottostante.

1. Clicchi Strumenti > Editor di script per andare alla finestra del progetto e fare clic su Compila il > New > File di script per inserire un altro nuovo modulo di codice, quindi, nella casella del messaggio, digitare un nome per questo script, vedere screenshot:

2. Clic OK e nel modulo del codice aperto, copia e incolla sotto il codice dello script per sostituire il codice originale, vedi screenshot:

function sumColoredCells(sumRange,colorRef) {
  var activeRg = SpreadsheetApp.getActiveRange();
  var activeSht = SpreadsheetApp.getActiveSheet();
  var activeformula = activeRg.getFormula();
  var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
  var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
  var sumValues = activeSht.getRange(countRangeAddress).getValues();  
  var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
  var BackGround = activeSht.getRange(colorRefAddress).getBackground();
  var totalValue = 0;
  for (var i = 0; i < backGrounds.length; i++)
    for (var k = 0; k < backGrounds[i].length; k++)
      if ( backGrounds[i][k] == BackGround )
        if ((typeof sumValues[i][k]) == 'number')
          totalValue = totalValue + (sumValues[i][k]);
  return totalValue;
};

3. Quindi salva questo codice, torna al foglio e inserisci questa formula: = sumcoloredcells (A1: E11, A1) in una cella vuota e premere Entra chiave per ottenere il risultato calcolato, vedi screenshot:

Note:: In questa formula: A1: E11 è l'intervallo di dati che desideri utilizzare, A1 è la cella con un colore di sfondo specifico che desideri sommare.

4. E poi puoi ripetere la formula sopra per sommare altre celle colorate specifiche.


Contare o sommare i valori delle celle sul colore della cella con Kutools per Excel in Microsoft Excel

In Microsoft Excel, per contare o sommare i valori delle celle in base al colore della cella specifico, Kutools for Excel'S Conta per colore può aiutarti a completare questa attività il più rapidamente possibile.

Kutools for Excel : con oltre 300 utili componenti aggiuntivi di Excel, da provare gratuitamente senza limitazioni in 30 giorni. 

Dopo l'installazione Kutools for Excel, per favore fai come questo:

1. Selezionare le celle nell'intervallo che si desidera contare o sommare in base al colore della cella, quindi fare clic su Kutools Plus > Conta per colore, vedi screenshot:

2. Nel Conta per colore finestra di dialogo, scegliere Formattazione standard dal Metodo del colore elenco a discesa, quindi selezionare sfondo dal Tipo di conteggio menu a discesa, vedi screenshot:

3. Quindi fare clic Genera rapporto pulsante e il nuovo foglio di lavoro con i risultati calcolati viene generato contemporaneamente, vedi screenshot:

Note:: Con questa potente funzionalità, puoi anche calcolare i valori delle celle in base alla formattazione condizionale o al colore del carattere.

Fai clic su Scarica e prova gratuita Kutools per Excel ora!


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • 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, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce centinaia di clic del mouse ogni giorno!
fondo officetab
Commenti (71)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ciao! Ottimo script ma incontro un problema quando provo a modificare i valori all'interno delle celle colorate. Lo script non aggiorna i valori se cambio il colore della cella. Posso forzare l'aggiornamento solo se elimino il contenuto della cella, cambio il colore e quindi inserisco di nuovo il valore.
Questo commento è stato fatto dal moderatore sul sito
Ehi, grazie per questo script. Sto riscontrando un problema nello script per i fogli di Google: TypeError: Impossibile chiamare il metodo "pop" di null. (riga 5, file "SumByColor"). Potete aiutarmi per favore?, grazie
Questo commento è stato fatto dal moderatore sul sito
Grazie per l'aiuto con "Conta le celle in base al colore per i fogli di Google". La limitazione sembra essere che quando i colori delle celle vengono modificati, il foglio non si aggiorna e i totali non sono corretti. Devo eliminare il codice nella cella totale e copiarlo di nuovo dalla cella vicina. Non è l'ideale, ma funziona. Grazie ancora.
Questo commento è stato fatto dal moderatore sul sito
Ciao, Todd,
Sì, come hai detto, dovresti ridigitare la formula quando cambia il colore della cella.
Potrebbero non esserci altri buoni modi per risolvere questo problema.
Se qualcun altro ha buoni metodi, si prega di commentare qui.
.
Questo commento è stato fatto dal moderatore sul sito
La tua funzione sumColoredCells() non è corretta in quanto non utilizza sumRange
Questo commento è stato fatto dal moderatore sul sito
Ciao, Dave,
Lo script sopra funziona bene nel mio foglio di Google.
Quando si applica la formula, è necessario salvare prima la finestra dello script.
Si prega di provare, grazie!
Questo commento è stato fatto dal moderatore sul sito
Ehi, grazie per questo script. Sto riscontrando un problema nello script per i fogli di Google: TypeError: Impossibile chiamare il metodo "pop" di null. (riga 5, file "SumByColor"). Potete aiutarmi per favore?, grazie
Questo commento è stato fatto dal moderatore sul sito
Ciao, Laura,
Lo script funziona bene nei miei fogli di google.
Se c'è un problema nel tuo foglio di google, posso condividere il mio foglio di google con te.
Si prega di fornire il proprio indirizzo e-mail.
.
Questo commento è stato fatto dal moderatore sul sito
Ciao, ho lo stesso problema, lo hai risolto?
Questo commento è stato fatto dal moderatore sul sito
Il problema forse è la tua configurazione regionale, questo script pensa che tu stia separando i parametri da ',', ma probabilmente non è il tuo caso. Nel mio caso uso ';', quindi ho modificato lo script, cambiando il carattere nelle righe

var countRangeAddress = activeformula.match(/\((.*)\;/).pop().trim();

var colorRefAddress = activeformula.match(/\;(.*)\)/).pop().trim();
Questo commento è stato fatto dal moderatore sul sito
cambio la coma (,) por punto y coma (;) pero aun así no me cuenta el color. mi vendita como risultato (0 cero).
Questo commento è stato fatto dal moderatore sul sito
C'è un modo per includere numeri negativi nel mix e ottenere la somma corretta? Il mio continua ad aggiungere tutti i numeri nell'intervallo, anche se il numero ha un segno negativo su di esso.
Questo commento è stato fatto dal moderatore sul sito
Ricevo "Azione non consentita Riga 0" Cosa sto sbagliando?
Questo commento è stato fatto dal moderatore sul sito
Continuo a ricevere un errore "Azione non consentita (riga 0)". Cosa significa questo?
Questo commento è stato fatto dal moderatore sul sito
si aggiorna automaticamente quando vengono aggiunti nuovi dati?
Questo commento è stato fatto dal moderatore sul sito
Non sembra
Questo commento è stato fatto dal moderatore sul sito
Hai mai capito come ottenere questo aggiornamento automatico?
Questo commento è stato fatto dal moderatore sul sito
Qualcuno ha trovato un modo per aggiornare automaticamente?
Questo commento è stato fatto dal moderatore sul sito
Ho bisogno di capire come farlo anche per l'aggiornamento automatico!... Qualcuno trova la risposta?
Questo commento è stato fatto dal moderatore sul sito
Qualcuno ha trovato un modo per aggiornare automaticamente?
Questo commento è stato fatto dal moderatore sul sito
No, e sto cercando di trovare la risposta
Questo commento è stato fatto dal moderatore sul sito
Sostituisci queste righe:
var countRangeAddress = activeformula.match(/\((.*)\;/).pop().trim();


var colorRefAddress = activeformula.match(/\;(.*)\)/).pop().trim();

Avviso di , è stato modificato per ;
Questo commento è stato fatto dal moderatore sul sito
Hi there,


Posso aver bisogno di aiuto con una formula simile alla SOMMA totale del numero di parole chiave corrispondenti e che riflettono il numero di colori.


Cosa devo ottenere determina il numero di laptop che è una parola chiave ma riconosce la Disponibile in base al colore delle celle?
Questo commento è stato fatto dal moderatore sul sito
sto cercando di fare qualcosa del genere
=countColoredCells (H62:H,B2)countif("MBA13R15")
Questo commento è stato fatto dal moderatore sul sito
Ciao,
La formula non funziona per me.
Se lo faccio nel foglio di calcolo si verificheranno solo errori.
Questo commento è stato fatto dal moderatore sul sito
Grazie, ha funzionato benissimo!
Questo commento è stato fatto dal moderatore sul sito
Lo script SumColoredCells funziona alla grande. Sai se c'è un modo per visualizzare (in una singola cella) la somma di 2 colori? Ad esempio, se voglio che la somma delle celle gialle e verdi venga visualizzata in una singola cella, è possibile? Direi che la formula sarebbe:
=SUM(sumcoloredcells(A1:E11,A1)),(sumcoloredcells(A1:E11,A5)) ....Ma questo risulta in un ERRORE. Qualche idea?
Questo commento è stato fatto dal moderatore sul sito
Ciao, Geoff,
Potrebbe non esserci una formula diretta per risolvere il tuo problema, ma puoi prima sommare le celle colorate separatamente, quindi sommare i due risultati calcolati di cui hai bisogno.
Questo commento è stato fatto dal moderatore sul sito
Grazie per la risposta. L'ho fatto, ma mi piacerebbe consolidare la formula in una singola cella, poiché devo aggiornare gli intervalli ogni settimana. Comunque grazie per aver controllato!
Questo commento è stato fatto dal moderatore sul sito
Ciao,


Questa funzione funziona, tuttavia, quando provo a sommarne 2 istanze nella stessa cella di (nel mio caso):


=sommaCelleColorate(A103:AW103, C171) + sommaCelleColorate(A138:AW138, C171)


Mi dà un #Errore - Intervallo non trovato (riga 6).


Non funziona anche se utilizzo SUM() o ADD(). Qualche idea?


Grazie in anticipo.
Questo commento è stato fatto dal moderatore sul sito
grazie :*
Questo commento è stato fatto dal moderatore sul sito
Hi there,
sui fogli di Google, sembra non funzionare, sono andato su debug e per entrambi i processi, nella riga 5 sembra essere un errore di tipo, il messaggio è: impossibile richiamare il "metodo pop2 di null. Ha senso? Grazie a quantità!
Questo commento è stato fatto dal moderatore sul sito
Internet è pieno di istanze di questa soluzione e non funziona.
Questo commento è stato fatto dal moderatore sul sito
Questo script funzionava alla grande, ma non funziona più. C'è un cambiamento che l'ha fatto cadere?
Non ci sono ancora commenti pubblicati qui
Carica Altre
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite