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

Hur räknar eller summerar celler baserat på cellfärg i Google-ark?

Räkna eller summera cellvärden baserat på specifik cellbakgrundsfärg för att få resultatet enligt följande skärmdump. Den här artikeln kommer jag att prata om hur man löser den här uppgiften i Google-ark och Microsoft Excel.

Räkna cellvärden baserat på cellfärg med skript i Google-ark

Summa cellvärden baserat på cellfärg med skript i Google-ark

Räkna eller summera cellvärden på cellfärg med Kutools för Excel i Microsoft Excel


Räkna cellvärden baserat på cellfärg med skript i Google-ark

Följande skript kan hjälpa dig att räkna cellvärdena baserat på specifik cellfärg, gör så här:

1. Klicka verktyg > Scriptredigerare, se skärmdump:

2. Klicka på i det öppnade projektfönstret Fil > Ny > Skriptfil för att öppna ett kodfönster, se skärmdump:

3. Och i snabbrutan, ange ett namn för den här skriptkoden, se skärmdump:

4. Klicka OK och kopiera och klistra sedan in följande kod för att ersätta den ursprungliga koden i kodmodulen, se skärmdump:

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. Spara sedan den här skriptkoden och gå tillbaka till arket, ange den här formeln: = räknefärgade celler (A1: E11, A1) in i en tom cell och tryck sedan på ange för att få det beräknade resultatet. Se skärmdump:

Anmärkningar: I denna formel: A1: E11 är det dataområde som du vill använda, A1 är cellen fylld med specifik färg som du vill räkna.

6. Upprepa ovanstående formel för att räkna andra specifika färgade celler.


Summa cellvärden baserat på cellfärg med skript i Google-ark

För att summera cellvärdena med en specifik cellfärg, använd nedan skriptkod.

1. Klicka verktyg > Scriptredigerare för att gå till projektfönstret och klicka Fil > Ny > Skriptfil för att infoga en ny ny kodmodul, skriv sedan ett namn för detta skript i snabbrutan, se skärmdump:

2. Klicka OK och i den öppnade kodmodulen, kopiera och klistra in under skriptkoden för att ersätta den ursprungliga koden, se skärmdump:

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. Och spara sedan den här koden, gå tillbaka till arket och ange den här formeln: = sumfärgade celler (A1: E11, A1) in i en tom cell och tryck på ange nyckel för att få det beräknade resultatet, se skärmdump:

Anmärkningar: I denna formel: A1: E11 är det dataområde som du vill använda, A1 är cellen med en specifik bakgrundsfärg som du vill summera.

4. Och sedan kan du upprepa formeln ovan för att summera andra specifika färgade celler.


Räkna eller summera cellvärden på cellfärg med Kutools för Excel i Microsoft Excel

För att räkna eller summera cellvärdena i Microsoft Excel baserat på specifik cellfärg, Kutools för ExcelÄr Räkna efter färg verktyget kan hjälpa dig att slutföra den här uppgiften så fort du kan.

Kutools för Excel : med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. 

När du har installerat Kutools för Excel, gör så här:

1. Markera cellerna som du vill räkna eller summera baserat på cellfärg och klicka sedan på Kutools Plus > Räkna efter färg, se skärmdump:

2. I Räkna efter färg dialogrutan, välj Standardformatering från Färgmetod rullgardinsmenyn och välj sedan Bakgrund från Räkna typ rullgardinsmeny, se skärmdump:

3. Klicka sedan Generera rapport knappen, och ett nytt kalkylblad med de beräknade resultaten genereras på en gång, se skärmdump:

Anmärkningar: Med den här kraftfulla funktionen kan du också beräkna cellvärdena baserat på villkorlig formatering eller teckensnittsfärg.

Klicka på Ladda ner och testa gratis Kutools för Excel nu!


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (77)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej! Bra skript men jag stöter på ett problem när jag försöker redigera värdena i de färgade cellerna. Skriptet uppdaterar inte värdena om jag ändrar färgen på cellen. Jag kan bara tvinga den att uppdatera om jag tar bort innehållet i cellen, ändrar färgen och sedan anger värdet igen.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, tack för det här manuset. Jag har ett problem med skriptet för Google Sheets: TypeError: Kan inte anropa metoden "pop" för null. (rad 5, fil "SumByColor"). Kan du snälla hjälpa?, tack
Denna kommentar minimerades av moderatoren på webbplatsen
Такая же ошибка. Не срабатывает(
Denna kommentar minimerades av moderatoren på webbplatsen
Tack för hjälpen med "Räkna celler baserat på färg för google sheets". Begränsningen verkar vara att när cellfärger ändras uppdateras inte arket och totalerna är felaktiga. Jag måste ta bort koden i totalcellen och kopiera igen från granncellen. Inte idealiskt, men det fungerar. Tack igen.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Todd,
Ja, som du sa, du bör skriva om formeln när cellfärgen ändras.
Kanske finns det inga andra bra sätt att lösa detta problem.
Om någon annan har bra metoder, vänligen kommentera här.
Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Din sumColoredCells()-funktion är felaktig eftersom den inte använder sumRange
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, Dave,
Ovanstående script fungerar bra i mitt Google-ark.
När du tillämpar formeln bör du först spara skriptfönstret.
Prova gärna, tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, tack för det här manuset. Jag har ett problem med skriptet för Google Sheets: TypeError: Kan inte anropa metoden "pop" för null. (rad 5, fil "SumByColor"). Kan du snälla hjälpa?, tack
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Laura,
Skriptet fungerar bra i mina google sheets.
Om det är problem med ditt Google-ark kan jag dela mitt Google-ark med dig.
Vänligen ange din e-postadress.
Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, jag har samma problem, har du fixat det?
Denna kommentar minimerades av moderatoren på webbplatsen
Problemet kanske är din regionala konfiguration, det här skriptet tror att du separerar parametrar med ',', men det är förmodligen inte ditt fall. I mitt fall använder jag ';', så jag modifierade skriptet och ändrade karaktären i raderna

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

var colorRefAddress = activeformula.match(/\;(.*)\)/).pop().trim();
Denna kommentar minimerades av moderatoren på webbplatsen
cambio la coma (,) por punto y coma (;) pero aun así no me cuenta el color. mig rea como resultado (0 cero).
Denna kommentar minimerades av moderatoren på webbplatsen
Era isso mesmo. Funcionou perfeito aqui
Denna kommentar minimerades av moderatoren på webbplatsen
Finns det något sätt att inkludera negativa tal i mixen och få rätt summa? Min fortsätter att lägga till alla siffror i intervallet, även om siffran har ett negativt tecken.
Denna kommentar minimerades av moderatoren på webbplatsen
Jag får "Åtgärd ej tillåten rad 0" Vad gör jag för fel?
Denna kommentar minimerades av moderatoren på webbplatsen
Jag får hela tiden ett felmeddelande "Åtgärd inte tillåten (rad 0)". Vad betyder det här?
Denna kommentar minimerades av moderatoren på webbplatsen
uppdateras den automatiskt när ny data läggs till?
Denna kommentar minimerades av moderatoren på webbplatsen
Verkar inte som det
Denna kommentar minimerades av moderatoren på webbplatsen
Har du någonsin kommit på hur du får detta att uppdateras automatiskt?
Denna kommentar minimerades av moderatoren på webbplatsen
Hittade någon ett sätt att uppdatera automatiskt?
Denna kommentar minimerades av moderatoren på webbplatsen
Jag måste ta reda på hur jag får det att automatiskt uppdatera också!... Någon som hittar svaret?
Denna kommentar minimerades av moderatoren på webbplatsen
Hittade någon ett sätt att uppdatera automatiskt?
Denna kommentar minimerades av moderatoren på webbplatsen
Nej, och jag försöker hitta svaret
Denna kommentar minimerades av moderatoren på webbplatsen
Byt ut dessa rader:
var countRangeAddress = activeformula.match(/\((.*)\;/).pop().trim();


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

Meddelande än , ändrades för ;
Denna kommentar minimerades av moderatoren på webbplatsen
Hej där,


Kan jag behöva lite hjälp med en formel som liknar SUM totalt antal sökord som matchar och återspeglar antalet färger.


Vad jag vad jag ska uppnå det bestämma antalet bärbara datorer som är ett nyckelord men känner igen Tillgänglig baserat på färgen på cellerna?
Denna kommentar minimerades av moderatoren på webbplatsen
jag försöker göra något sånt här
=countColoredCells (H62:H,B2)countif("MBA13R15")
Denna kommentar minimerades av moderatoren på webbplatsen
Hallå,
Formeln fungerar inte för mig.
Om jag gör detta i kalkylbladet kommer bara fel att uppstå.
Denna kommentar minimerades av moderatoren på webbplatsen
Tack, detta fungerade utmärkt!
Denna kommentar minimerades av moderatoren på webbplatsen
SumColoredCells-skriptet fungerar utmärkt. Vet du om det finns ett sätt att visa (i en enda cell) summan av 2 färger? Till exempel, om jag ville att summan av både de gula och gröna cellerna skulle visas i en enda cell, är det möjligt? Jag skulle tro att formeln skulle vara:
=SUMMA(sumfärgade celler(A1:E11,A1)),(sumfärgade celler(A1:E11,A5)) ....Men det resulterar i ett FEL. Några idéer?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, Geoff,
Det kanske inte finns någon direkt formel för att lösa ditt problem, men du kan först summera de färgade cellerna separat och sedan summera de två beräknade resultaten som du behöver.
Denna kommentar minimerades av moderatoren på webbplatsen
Tack för svaret. Jag har gjort det, men skulle älska att konsolidera formeln i en enda cell, eftersom jag måste uppdatera intervallen varje vecka. Hur som helst, tack för att du kollade!
Denna kommentar minimerades av moderatoren på webbplatsen
Hallå,


Den här funktionen fungerar dock när jag försöker summera 2 instanser av den i samma cell som i (i mitt fall):


=sumColoredCells(A103:AW103, C171) + summaColoredCells(A138:AW138, C171)


Det ger mig ett #Error - Range not found (rad 6).


Det fungerar inte även om jag använder SUM() eller ADD(). Några idéer?


Tack på förhand.
Denna kommentar minimerades av moderatoren på webbplatsen
tack :*
Denna kommentar minimerades av moderatoren på webbplatsen
Hej där,
på Google Sheets, verkar inte fungera, jag gick på felsökning och för båda processerna, i rad 5 verkar det vara ett typfel, meddelandet är: omöjligt att återkalla "pop2-metoden för null. Är det vettigt? Tack massa!
Denna kommentar minimerades av moderatoren på webbplatsen
Internet är fullt av instanser av denna lösning och det fungerar inte.
Denna kommentar minimerades av moderatoren på webbplatsen
Det här skriptet brukade fungera utmärkt, men det fungerar inte längre. Finns det någon förändring som sänkte det?
Det finns inga kommentarer här ännu
Ladda fler
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL