Insérer une date automatiquement lorsqu'une autre cellule est renseignée

Bonjour les coupains.

J'ai un livre de compte sous google sheets, je remplis tous les jours pleins de lignes sous ce document et j'aimerais tout simplement que lorsque une case est rempli la date du jour s'insert automatiquement. Un petit tableau tout simple pour visualiser le truc:

Date d'achatDate de venteItemPrix d'achatPrix de vente
22/02/202124/02/2021truc5€6€

Dans mon exemple, lorsque je remplis la colonne Item ou Prix d'achat peu importe, la date du jour se mettrait dans Date d'achat, puis lorsque je renseigne Prix de vente la date du jour se renseigne dans Date de vente.

Par avance merci de votre aide

A+

Bonjour,

tu peux t'inspirer de ceci pour l'item, à tester et reproduire sur les autres colonnes (pas testé, écrit "à main levée")

function onEdit(e) {
  var cel = e.source.getActiveRange();
  if (cel.getColumn() == 3) {
    var d = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy à hh:mm")
    cel.offset(-2,0).setValue(d);
  }
};

mets le lien vers ton projet si tu veux affiner

Je n'ai jamais fais de VBA sur google sheets, mais je devrias m'en sortir. J'essaye de te partager le lien du projet.

Les macros ne crées pas de conflits lorsque je modifie le sheets sur télephones ?

https://docs.google.com/spreadsheets/d/126LRLWXRzMuYOYcgO85xp8bxpmzW-bkgg7_7fPsbAdI/edit

A+ merci de la réponse

Les macros ne crées pas de conflits lorsque je modifie le sheets sur télephones ?

non mais ... j'ai parfois remarqué des écarts d'exécution ! il faut tester

je n'ai pas ouvert le lien car curieusement cela me dit (jamais vu cela !)

image

J'ai le même message d'execution sur mon PC du boulot quand j'essaye d'ouvrir (j'ai partagé le lien depuis mon télephone)

Merci de ton aide je regarderai ce soir sur mon PC perso. je te tiens au jus de si ca marche

A+

Salut, voici un nouveau lien.

https://docs.google.com/spreadsheets/d/126LRLWXRzMuYOYcgO85xp8bxpmzW-bkgg7_7fPsbAdI/edit?usp=sharing

Je n'ai pas réussis a faire fonctionner tas fonction..

il faut mettre =Onedit() sur la cellule ou je veux une date ?

A+

onEdit(e) est un script

Voici le script

/** @OnlyCurrentDoc */

function onEdit(e) {
  var cel = e.source.getActiveRange();
  if (cel.getColumn() == 4) {
    var d = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy")
    cel.offset(0,-2).setValue(d);
  }
  if (cel.getColumn() == 5) {
    var d = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy")
    cel.offset(0,-3).setValue(d);
  }
  if (cel.getColumn() == 6) {
    var d = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy")
    cel.offset(0,-3).setValue(d);
  }
};

Salut

désolé de la réponse tardive. C'est parfaitement fonctionnel rien à redire merci Steelson

A+

Bonjour,

Ce sujet repond exactement à un besoin. Merci
J'ai réussi à appliquer ce script à mon tableau.
Je n'ai que peu de connaissance en programmation et langage et je souhaiterai pousser un peu plus loin le script.
Pour insérer la date du jour, j'ai une colonne de cases à cochées, serait-il possible d'effacer la date quand je décoche la ligne?
Actuellement je dois effacer la date moi même. Le fichiers etant utiliser par plusieurs employés avec peu de connaissance en informatique je voudrais simplifier au maximum mes fichiers.

Merci

Bonjour,

pourrais-tu mettre un lien vers une copie simplifiée de ton projet ? https://www.sheets-pratique.com/fr/cours/partage

un essai

  // Commandé
  if (cel.getColumn() == 10) {
    if (cel.getValue() == true){
      var d = Utilities.formatDate(new Date(), "GMT+4", "dd MM yyyy")
      cel.offset(0,+1).setValue(d);
    }else{
      cel.offset(0,+1).clearContent();
    }
  }

Ça fonctionne très bien!!!

Merci

Je rencontre une difficulté avec la colonne "Demandé" qui dépend de la saisie dans la colonne description et non d'une casse à cochée.
J'ai fait des rechercher pour m'en sortir seul avec (!isCellBlank) mais ca ne fonctionne pas.

// Demandeur
  if (cel.getColumn() == 7) {
    if (!isCellBlank)
      var d = Utilities.formatDate(new Date(), "GMT-5", "dd MM yyyy")
      cel.offset(0,-5).setValue(d);
    }else{
      cel.offset(0,-5).clearContent();
    }
  }

Je ne suis pas sur d'être sur la bonne voie :(

Tu n'es pas loin, essaie ceci

if ( ! cel.isBlank() ) {

attention, il te manque aussi l'ouverture de crochets {

Désolé, j'ai trouvé la solution à mon problème en lien avec ce post mais je n'ai aucune idée comment supprimer mes réponses.

Ok, Merci

Je ne vais pas pouvoir m'en occuper aujourd'hui.
Je te tiens informer dés que possible.

Rechercher des sujets similaires à "inserer date automatiquement lorsqu renseignee"