Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Figer la mise à jour de la date


Sujet :

APIs Google

  1. #1
    Nouveau Candidat au Club
    Figer la mise à jour de la date
    Bonjour à tous,

    Je suis tout nouveau sur le forum. J'ai cherché d'abord partout sur Internet mais sans résultat d'où mon nouveau topic pour solliciter un peu de temps aux plus charitables d'entre vous.

    Je vous explique mon problème, nous utilisons dans mon entreprise un tableur pour se communiquer les uns aux autres les divers messages quotidiens. Je souhaite du coup pour faciliter la saisie, automatiser l'apparition de la date en première colonne selon la formule suivante =IF(B151="";"";NOW())

    Cependant, bien évidemment la formule NOW se met automatiquement à jour à chaque modification du tableur. J'ai bien trouvé dans les paramètres le critère de modification des mises à jour mais aucun ne permet d'annuler celle-ci.

    Je suis donc bloqué, je voudrais que la date une fois générée dans la cellule soit figée mais je ne trouve pas comment faire.

    Merci beaucoup pour ceux qui prendront le temps de me répondre.

    Matthieu

  2. #2
    Modérateur

    Bonjour,

    Pourrais-tu définir un peu mieux le flow d'utilisation ? Quand tu veux ajouter un nouveau message, tu te mets sur la dernière ligne du fichier, tu commences à taper, et tu veux que la date se apparaissent automatiquement dans la colonne A ?

  3. #3
    Nouveau Candidat au Club
    Bonjour,

    Afin d'être plus précis voici la photo de mes en-têtes de colonnes, je voudrais dans l'idéal que lorsque l'on tape un nom en colonne B sur la dernière ligne que l'on renseigne, il charge par défaut la date du jour en colonne A puis la fige à l'instant T pour éviter une mise à jour



    merci par avance pour ta réponse

  4. #4
    Modérateur

    Je ne vois pas trop d'autres solutions que d'utiliser le trigger onEdit().

    Voici par exemple comment mettre la date d'édition dans la colonne A quand tu te mets à écrire dans une ligne pour laquelle la colonne A est vide :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function onEdit() {
      var sheet = SpreadsheetApp.getActiveSheet();
      var activeRange = sheet.getActiveRange();
     
      if(activeRange != null) {
        var cell = sheet.getRange(activeRange.getRow(), 1);
        if (cell.isBlank()) {
          // set date
          var value = Utilities.formatDate(new Date(), "GMT", "dd/MM/yyyy HH:mm:ss");
          cell.setValue(value);
        } else {
          // date already set, don't update
        }
      }
    }