Changement de couleur d'une cellule en fonction de l'utilisateur qui écrit

Bonjour tout le monde,

J'aurai besoin de savoir s'il était possible, sur un sheets à plusieurs, de colorer une case en fonction de la dernière personne qui a écrit dedans.

Est-ce que quelqu'un a déjà eu à utiliser une fonction comme celle là ?

Merci d'avance !

Bonjour,

Ce doit être réalisable à l'aide d'un script.

Il faudrait un tableau avec la liste des email (compte google des users) et en fond la couleur voulue pour chaque personne.

1- le script voit qui fait la modification et où

2- le script vérifie où est l'email dans la liste, et mets sa couleur dans une variable

3- enfin, on applique la couleur à la plage modifiée par l'user

à tester ce n'est que du théorique :

function onEdit(e) {
  var sheet = e.source.getActiveSheet();
  var user = Session.getActiveUser().getEmail();
  var range = e.range;
  var userSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("list_users");// feuille où se situe la liste des emails + couleurs
  var emailRange = userSheet.getRange("A2:A10");// plage où se situe la liste des emails + couleurs
  var emails = emailRange.getValues();
  for (i=0;i<emails.length;i++) {
    if (emails[i][0] === user) {
      var position =i+emailRange.getRow();}}
  var color = userSheet.getRange(position, 1).getBackground();
  range.setBackground(color);
}

Alors j'ai compris l'idée, j'ai bien créé une table avec les emails + les couleurs en fond c'est ok.
Pour l'exécuter j'ai créé un bouton, mais quand j'essaie de l'exécuter ça me renvoie ce message d'erreur : "TypeError: Cannot read properties of undefined (reading 'range')". Cela renvoie vers la ligne 4, le "e.range".

J'ai check un peu ce qu'il en est concernant les objets d'événement mais ne comprenant pas l'intégralité du code (première fois que je touche à ça), je ne saurai pas comprendre d'où vient le souci.

J'ai lu que cette erreur provient souvent du fait que les gens exécutent ce genre de programme dans l'éditeur et que donc c'est normal que cela ne fonctionne pas, sauf que ça me renvoie cette erreur sur l'éditeur ET sur le sheets.

Une idée d'où ça peut venir ?

Merci beaucoup pour l'aide déjà.

Bonjour,

Lorsque vous lancez le script de l'éditeur l’événement (e) n'existe pas, donc ça ne fonctionne pas.

- Assurez vous que votre adresse mail est bien dans la liste, puis tentez de modifier une cellule voir si ça fonctionne.

Edit : j'ai fais le test, ça fonctionne bel et bien

Rechercher des sujets similaires à "changement couleur fonction utilisateur qui ecrit"