Comment insérer un horodatage statique dans Google Sheets ?

De mon expérience sur Google Sheets, j’estime que nous pouvons insérer trois types d’horodatages ou de date et heure dans Google Sheets en fonction de leur comportement : dynamique, statique et statique conditionnel.

  • Dynamique: L’horodatage à mise à jour automatique (dynamique) se met à jour chaque fois que vous modifiez votre feuille ou lorsque vous fermez et rouvrez la feuille. Nous utilisons la fonction intégrée NOW pour cela.
  • Statique: La date et l’heure statiques ne s’actualisent pas lorsque vous modifiez votre feuille. Nous utilisons un raccourci pour cela.
  • Statique conditionnel: Le reste consiste à insérer un horodatage conditionnel statique dans Google Sheets.

Dans ce troisième type, nous utilisons une formule Lambda pour insérer automatiquement une date et une heure statiques dans une cellule lorsque nous saisissons une valeur dans une autre cellule.

Il ne se mettra à jour que si la soi-disant une « autre » cellule est mise à jour. Aucun autre changement ne l’affecte.

Date et heure dynamiques et la fonction MAINTENANT

Vous pouvez utiliser la fonction MAINTENANT dans Google Sheets pour insérer un horodatage qui se met à jour à chaque modification.

Il suffit de saisir =maintenant() dans la cellule A1 pour insérer la date et l’heure actuelles dans cette cellule. Il se recalculera et s’actualisera chaque fois que vous modifierez votre feuille.

Quels sont ses autres objectifs ?

Nous pouvons utiliser la fonction MAINTENANT dans des tests logiques. Par exemple, supposons que les cellules B4 et C4 aient respectivement une date et une heure de début et de fin de tâche.

Nous pouvons utiliser =maintenant()-B4 et =C4-maintenant() pour obtenir les durées écoulées et restantes dans les cellules E4 et F4, respectivement.

Insérer un horodatage statique à l’aide d’un raccourci dans Google Sheets

La meilleure façon d’insérer un horodatage statique est d’utiliser des raccourcis clavier dans Google Sheets.

Cela dépend de la plate-forme du système d’exploitation que vous utilisez. Sous Windows, vous pouvez utiliser la combinaison de touches Ctrl + Alt + Maj + ; pour insérer une date et une heure statiques dans Google Sheets.

Si vous utilisez un Mac, utilisez la combinaison de touches Command + Option + Maj + ;. Dans mon test, cela n’a pas fonctionné. La documentation de Google indique : « Il est possible que certains raccourcis ne fonctionnent pas pour des langues ou des claviers en particulier. » Le raccourci Command / a fonctionné pour saisir la date.

Comment insérer une date et une heure statiques dans une cellule dans Google Sheets ?

Nous utiliserons la cellule A1.

Allez à la cellule A1 et appliquez l’une des touches de raccourci ci-dessus, selon que vous utilisez Windows ou Mac. Vérifiez la barre de formule. Vous pouvez voir que A1 ne contient aucune formule.

Insérer un horodatage conditionnel statique à l’aide d’une formule dans Google Sheets

Auparavant, nous devions utiliser Google Apps Script pour cela. Maintenant, nous pouvons utiliser une formule Lambda pour limiter le dynamisme (volatilité) de la fonction MAINTENANT.

Je souhaite insérer un horodatage dans la cellule A1 lorsque je saisis une valeur dans la cellule B1 et que la date et l’heure restent les mêmes jusqu’à ce que j’apporte des modifications à A1.

Comment faisons-nous cela ?

Insérez la formule Lambda suivante dans la cellule A1. Vous pouvez le copier vers le bas aussi loin que vous le souhaitez.

=lambda(horodatage;SI(B1<>"";horodatage;SIERREUR(1/0)))(MAINTENANT())

Saisissez ensuite n’importe quel texte ou nombre (n’importe quelle valeur) dans la cellule B1. La formule insérera la date et l’heure actuelles dans la cellule A1. Il ne s’actualisera pas lorsque vous modifierez d’autres cellules.

MAINTENANT dans Lambda (Anatomie de la formule)

Il y a deux parties dans la formule ci-dessus qui insère un horodatage conditionnel statique dans la cellule A1 de Google Sheets : la partie logique et la partie Lambda.

Partie logique

Lambda effectue le test logique SI ci-dessous pour insérer un horodatage statique dans la cellule A1.

=SI(B1<>"",maintenant(),sierreur(1/0))

Syntaxe IF : IF(expression_logique, valeur_si_vrai, valeur_si_faux)

  • expression_logique : B1<> » »
  • valeur_si_vrai : now()
  • valeur_si_faux : iferror(1/0)

Vous pouvez spécifier des guillemets doubles («  ») au lieu de iferror(1/0) dans la partie valeur_si_faux pour renvoyer une valeur vide. C’est l’approche la plus courante.

Mais même si A1 semble être vide lorsque B1 est vide, le test suivant donnera FALSE alors qu’il devrait être TRUE.

=isblank(A1)

D’autre part, iferror(1/0) renvoie un blanc pur que ISBLANK évalue à TRUE.

La partie logique SI ci-dessus peut insérer un horodatage dans la cellule A1 lorsque vous insérez une valeur dans B1. Mais elle est volatile et ne cesse de changer à chaque modification dans Sheets. Le Lambda résout cela.

Partie Lambda

J’ai utilisé Lambda pour rendre la date et l’heure insérées statiques et ne les mettre à jour que lorsque je modifie B1.

Syntaxe Lambda :

=LAMBDA([nom, ...],expression_de_formule)(appel_de_fonction, ...)
  • nom : horodatage. C’est un identifiant pour passer maintenant() à la fonction.
  • expression_de_formule : Partie logique ci-dessus après avoir remplacé maintenant() par horodatage.
  • appel_de_fonction : maintenant()

Insérer un horodatage statique lorsque plusieurs conditions sont remplies

Comment insérer un horodatage lorsque plusieurs conditions sont remplies dans Google Sheets ?

Par exemple, supposons que vous souhaitiez insérer une date et une heure statiques dans la cellule A2 lorsque B2:D2 est renseigné.

La formule Lambda suivante fera cela.

=lambda(horodatage;SI(ET(B2<>"";C2<>"";D2<>"");horodatage;SIERREUR(1/0)))(MAINTENANT())

Comment l’utiliser ?

Insérez-le dans la cellule A2 et faites-le glisser vers le bas aussi loin que vous le souhaitez. Commencez ensuite à saisir des valeurs dans B2:D2.

Vous pouvez remplacer l’opérateur logique AND par OR lorsque vous souhaitez remplir l’une ou l’autre des conditions. Par exemple, insérez un horodatage dans A2 si B2, C2 ou D2 a des valeurs.