J'écris mon premier script d'applications Google sur des feuilles de Google et je suis très excité par les possibilités qu'il ouvre. Cependant, j'essaie toujours de comprendre quelques choses: comme le déplacement de données entre différents onglets d'une feuille de calcul et à travers des feuilles de calcul indépendantes (avec différents identifiants de feuilles de calcul): Quelqu'un peut-il suggérer comment cela peut être fait? Mais ce qui me préoccupe le plus, c'est que mon script capture les horodatages, mais je veux aussi qu'il enregistre les emails des utilisateurs. J'ai lu dans les documents qu'il existe un critère complexe qui détermine la raison pour laquelle un courriel peut être saisi ou non - quels sont ces critères? Parce qu'étrangement, tout en testant le code initialement, mon propre email était capturé mais seulement dans environ 50% des cas. Je ne suis pas sûr de comprendre complètement ce qui se passe ici?Pourquoi mon script de feuille de calcul Google ne capture-t-il pas les e-mails sur getUser()?
Mon code:
function onEdit(e){
// Set a comment on the edited cell to indicate when it was changed.
var range = e.range;
var activeSheet = e.source.getActiveSheet();
range.setNote('Last modified: ' + new Date() + new Date().toLocaleTimeString() + ' sheet: ' + activeSheet.getName());
if (activeSheet.getName() == "KYCEntrySheet"){
var r = e.source.getActiveCell();
if(r.getColumn() == 10) { //Any changes within this column set the date below and the email on the 2nd call
//if(r.offset(0, 1).getValue() === '') //is empty?
r.offset(0, 5).setValue(new Date().toLocaleTimeString());//will only put date, format "123/Date and time" if time needed
//if(r.offset(0, 2).getValue() === '') //is empty?
r.offset(0, 9).setValue(Session.getUser());//inserts current users email
}}}
Merci!