Somme de cellules uniquement des cellules d'une certaine couleur

Bonjour,

J'ai vu que EXCEL avait la fonction NO_COULEUR et le calcul des sommes des cellules d'une certaine couleur. Cependant, je ne vois pas cette fonction sur Google Sheet à mon grand désespoir.

Auriez vous une fonction, ou bien un script que je puisse ajouter dans "Apps Script", pour que je puisse compter les cellules uniquement d'une certaine couleur ?

L'idée est de faire la SOMME des chiffres dans plusieurs cellules si elles sont avec une couleur de remplissage ROUGE. Sinon, aucune somme ne doit être faite.

Dans l'exemple ci-dessous, il faudrait que la cellule me calcule donc les cellules 3+5 uniquement

capture d ecran 2022 11 18 154107

Merci pour votre précieuse aide,

Jimmy

Bonjour,

Tu peux utiliser ce script trouvé sur le net:

Ce script permet par appel de fonctions:

  • =getBackgroundColor(rangeSpecification) pour retourner le code couleur de la cellule.
  • =sumWhereBackgroundColorIs(color, rangeSpecification) pour additionner le contenu de la plage de cellules de cette couleur.
  • =countCellsWithBackgroundColor(color, rangeSpecification) pour compter le nombre de cellules de cette couleur.

Format d'écriture:

=sumWhereBackgroundColorIs("#ff0000";"A1:C4")

Attention, les calculs ne se rafraichissent pas automatiquement!!!

Cordialement,

Fil.

function getBackgroundColor(rangeSpecification) {
  var sheet = SpreadsheetApp.getActiveSheet();
  var cell = sheet.getRange(rangeSpecification);
  return cell.getBackground();
}

function sumWhereBackgroundColorIs(color, rangeSpecification) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var range = sheet.getRange(rangeSpecification);
  var x = 0;
  for (var i = 1; i <= range.getNumRows(); i++) {
    for (var j = 1; j <= range.getNumColumns(); j++) {
      var cell = range.getCell(i, j);
      if(cell.getBackground() == color)
        x += parseFloat(cell.getValue());
    }
  }
  return x;
}

function countCellsWithBackgroundColor(color, rangeSpecification) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var range = sheet.getRange(rangeSpecification);
  var x = 0;
  for (var i = 1; i <= range.getNumRows(); i++) {
    for (var j = 1; j <= range.getNumColumns(); j++) {
      var cell = range.getCell(i, j);
      if(cell.getBackground() == color)
        x++;
    }
  }
  return x;
}

Un grand merci pour votre réponse, c'est top.

Rechercher des sujets similaires à "somme uniquement certaine couleur"