Vérifier valeur d'une cellule par rapport à une autre de la même ligne

Bonjour bonjour,

J'ai (encore une fois) besoin d'aide de la communauté....

Sheet concerné: https://docs.google.com/spreadsheets/d/1clsBBaHXftBXimCepfCpO6EhhwKpjllsJweycsA7XHA/edit?usp=sharing

1) J'ai un tableau dont le nombre de ligne peut varier (il peut y avoir 2 lignes, comme il peut y en avoir 12). Le "range du tableau est C9:F20

Dans ce tableau, je voudrais faire un script qui vérifie ceci (exemple avec la ligne 11) lorsqu'on clique sur le bouton "EMAIL CHECK":

- Si la cellule C11 n'est pas vide & que la cellule D11 est vide, alors le background de la cellule E11 est jaune.

J'ai fait un script qui vérifie chaque cellule des 12 lignes systématiquement, mais pour alléger cela je souhaiterai faire une boucle qui me permette de le faire en prenant en compte la dernière ligne remplie (pour éviter de faire les 12 à chaque fois).

Je pense qu'il faut imbriquer 2 boucles comme ceci, non (elles ne sont pas terminées car je bloque à ce niveau...)?

 var Range = sheetDeliverA.getRange('C9:F29');
 var LastRow = Range.getLastRow();

 for(var row=9;row<=LastRow;row++) {
   for(var col=3;col<=5;col++) {

2) Je cherche également une aide pour l'utilisation des cases à cocher...

L'idée, c'est que lorsqu'on clique sur le bouton "DELIVER SELECTED", cela envoie un mail avec son nom, prénom et asset à chaque trainee de la liste SI la case correspondante est cochée... Dois-je aussi utiliser des boucles? Comment récupérer mes variables uniques une à une?

Merci encore pour votre aide

Bonjour,

- Si la cellule C11 n'est pas vide & que la cellule D11 est vide, alors le background de la cellule E11 est jaune.

pourquoi pas une MFC

=et(C11<>"";D11="")

Je suis obligé de passer par un script car si le mail (colonne D) est manquant, alors il faudra renseigner manuellement dans la cellule jaune l'adresse mail (colonne E).

Les données du tableau dépendant des extract quotidiennes, la formule permettant cela est dans chaque cellule de la colonne D (mais ce n'est pas présent dans ce fichier-là car il n'est pas le fichier final)

Pour le moment je l'ai fait ainsi pour chaque cellule de ma colonne D :

  if((TraineeA_C11 !=="") && (MailA_D11 =="")) {
   sheetDeliverA.getRange('E11').setBackground('yellow');
  };

Là où je coince, c'est comment je peux récupérer ma valeur "Trainee" (colonne C+numéro de ligne) ainsi que ma valeur "Mail" (colonne D+numéro de ligne) et créer une boucle avec la dernière ligne remplie...

Je suis obligé de passer par un script car si le mail (colonne D) est manquant, alors il faudra renseigner manuellement dans la cellule jaune l'adresse mail (colonne E).

pas du tout d'accord

néanmoins, sur le plan de la syntaxe, voici ton script avec boucle

function test(){
  var spreadsheet = SpreadsheetApp.getActive();
  var sheetDeliverA = spreadsheet.getSheetByName("Deliver List A");
  for (var i=9;i<=29;i++){
    var TraineeA = sheetDeliverA.getRange('C'+i).getValue();
    var MailA = sheetDeliverA.getRange('D'+i).getValue();
    if((TraineeA !=="") && (MailA =="")) {
      sheetDeliverA.getRange('E'+i).setBackground('yellow');
    }
  }
}

le problème est qu'il faudrait y inclure l'effacement de la couleur (ce que ferait de fait une MFC)

Exactement ce qu'il me fallait! Au top!

Merci :-)

Rechercher des sujets similaires à "verifier valeur rapport meme ligne"