J'ai une ligne qui définit la date et l'heure actuelles dans une cellule:
sheet.getRange(1,1).setValue(new Date());
Ensuite, j'ai une ligne qui crée une date formatée en fonction de la valeur de cette cellule:
var addedDate = sheet.getRange(1,1).getValue();
var addedTime = Utilities.formatDate(addedDate, "GMT", "hh:mm a");
L'heure ajoutée résultante semble être dans le fuseau horaire GMT et j'en ai besoin pour être dans le fuseau horaire de l'utilisateur. Ce sera généralement l'heure de l'Est (-0500), mais si je soustrayez simplement 5 heures à partir de l'heure, cela ne tient pas compte de l'heure d'été (-0400).
J'ai vérifié la documentation pour formatDaate ici: https://developers.google.com/apps-script/reference/uties/utieux#formatDate (date, chaîne, chaîne)
quels liens vers le fichier officiel Java SimpleDateformat Class Documentation ici: http://docs.oracle.com/javase/6/docs/aPi/java/text/simpledateformat.html
... Mais je ne trouve pas une liste de zones de temps valides là-bas pour remplacer le GMT avec.
Vous pouvez directement obtenir le fuseau horaire de tableur comme celui-ci:
var addedDate = sheet.getRange(1,1).getValue();
var addedTime = Utilities.formatDate(addedDate, SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "hh:mm a");
Voir Doc ici
mais Google Apps Script utilise ces formats si vous souhaitez le choisir vous-même: