Condition si une plage contient une couleur spécifique
Résolu
mafia97231
Messages postés
27
Date d'inscription
Statut
Membre
Dernière intervention
-
mafia97231 Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
mafia97231 Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je cherche à réaliser un script me permettant de mettre en forme une cellule cible si dans ma plage de référence se trouve une cellule avec une couleur de fond spécifique.
Ainsi, si une cellule de ma plage 'A1:E1' a un fond rouge donc D1 prends la valeur 'ALERTE' avec une police rouge. Sinon, D1 prends la valeur 'OK' avec une police verte.
Le code suivant ne fonctionne pas :
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
const red = '#ff0000';
const green = ''#00ff00';
var referenceRange = sheet.getRange('A1:E1');
var rangeColor = referenceRange.getBackgroundsColors();
var targetRange = sheet.getRange('D1');
if (rangecolor === red)
{
targetRange.setFontColor(red).setValue('ALERTE')
}
else
{
targetRange.setFontColor(green).setValue('OK')
};
Une solution ?
Windows / Chrome 105.0.0.0
A voir également:
- Condition si une plage contient une couleur spécifique
- Excel cellule couleur si condition texte - Guide
- Somme si couleur - Guide
- Image de manchots sur une image de plage. - Forum Graphisme
- A quoi servent les boutons de couleur sur une telecommande - Guide
- Si une cellule contient un mot alors ✓ - Forum Excel
1 réponse
Le problème venait de la syntaxe de 'getBackgroundColor'.
le bon code :
function myFunction() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
const red = '#ff0000';
const green = '#00ff00';
var referenceRange = sheet.getRange('A1:E1');
var rangeColor = referenceRange.getBackgroundColor() ;
var targetRange = sheet.getRange('D1');
if (rangeColor === red)
{
targetRange.setFontColor(red).setValue('ALERTE')
}
else
{
targetRange.setFontColor(green).setValue('OK')
};
}
Merci, à bientôt.