Ich verwende Google Spreadsheets, um eine Matrix (Zeit / Aktivität) als Tagesplan für die Mitarbeiter zu erstellen.
Gibt es eine Formel, um die Anzahl der Zellen in einer Spalte zu berechnen, die eine bestimmte Farbe schattiert (oder nicht schattiert) haben?
Beispiel: 20 der Zellen sind grau und 31 sind nicht grau (jede andere Farbe schattiert). Anstatt sie manuell zu zählen, wird dies am unteren Rand der Spalte "Reichweite" berechnet.
google-sheets
google-apps-script
Salgire
quelle
quelle
Antworten:
Ich habe einen Weg gefunden, dies mithilfe der von Google Spreadsheet bereitgestellten Skriptfunktion zu tun.
So geht's:
Code:
Nachdem Sie die obigen Schritte ausgeführt haben, stehen Ihnen in der Tabelle drei weitere Funktionen zur Verfügung:
countCellsWithBackgroundColor(<color>, <range specification>)
sumWhereBackgroundColorIs(<color>, <range specification>)
getBackgroundColor(<cell specification>)
Bitte beachten Sie, dass
<range specification>
und<cell specification>
in A1- Notation ausgedrückt sind und in Anführungszeichen gesetzt werden müssen .Um beispielsweise die Anzahl aller Zellen im Bereich B2: F13 zu ermitteln, deren Hintergrundfarbe auf Weiß eingestellt ist , sollten Sie die folgende Formel eingeben:
und um die Summe derselben Zellen zu berechnen, verwenden Sie die Formel:
Bei einigen Zellen ist der Hintergrund möglicherweise nicht auf eine Farbe wie "Weiß" oder "Grau" eingestellt, sondern auf eine RGB-Farbe wie "Weiß"
#6fa8dc
. Sie können die Farbe nicht erraten. Wenn Sie also die Farbe für eine Zelle herausfinden möchten (z. B.B9
), sollten Sie diese Formel in eine Zelle eingeben:und verwenden Sie anschließend diesen Wert als Parameter für die beiden obigen Funktionen.
Es scheint, dass, wenn die Hintergrundfarbe einer Zelle eine "Themenfarbe" ist,
getBackground()
fälschlicherweise immer zurückgegeben wird#ffffff
. Ich habe keinen anderen Weg gefunden, als eine Farbe aus dem Standard-Set zu verwenden.Beachten Sie auch hier die Anführungszeichen in allen obigen Beispielen. Ohne sie würden die Formeln nicht funktionieren.
quelle
getBackgroundColor()
ist veraltet. Vielleicht können Sie den Code aktualisieren?Ich habe keine Möglichkeit gefunden, die Zellen mit einer bestimmten Farbe in Google Text & Tabellen direkt zu zählen.
Was macht sie schattiert. Ist es automatisch? Wenn sie einen Wert haben, werden sie automatisch schattiert? In diesem Fall können Sie mit der Funktion counta () jede Zelle mit einem Wert zählen. Wenn es sich um komplexere Regeln handelt, müssen Sie möglicherweise die Funktion countif () verwenden.
Hinweis: Möglicherweise müssen Sie zusätzliche Zeilen am oberen oder unteren Rand der Spalte berücksichtigen
quelle