Dates et heures

Video google sheet today time zone

Datetimes dans Google Sheets

Google Sheets utilise une version en grille du temps de l’époque. Une cellule datetime contient un numéro de série, qui correspond au nombre de jours écoulés depuis l’époque du 30 décembre 1899 00h00:00 UTC. Ce numéro est ensuite affiché de manière plus conviviale, selon une chaîne de caractères spéciale. Actuellement, googlesheets4 ne propose aucune prise en charge explicite pour traiter ces chaînes de format, bien que cela sera probablement possible un jour.

Intuition sur les datetimes près de l’époque

Pour mieux comprendre, examinons les datetimes peu de temps après l’époque et inspectons les numéros de série sous-jacents. Dans un extrait masqué, nous créons une feuille et la lisons dans R.

Crawlan.com

✔ Création de la nouvelle feuille : "près-de-l-epoque".
✔ Lecture de "près-de-l-epoque".
✔ Plage 'dat'.
# Un tibble: 2 × 2
(datetime, serial_number)
<chr> <dbl>
1 1899-12-30 12:00:00 0.5
2 1899-12-31 18:00:00 1.75

Le 30 décembre 1899 à 12h00 est midi le jour qui correspond à l’époque de Google Sheets. Son numéro de série sous-jacent est 0,5, car une demi-journée s’est écoulée depuis l’époque. Le 31 décembre 1899 à 18h00 est 18h00 le soir du jour suivant l’époque. Son numéro de série sous-jacent est 1,75, car il s’est écoulé un jour et trois quarts depuis l’époque.

Fuseau horaire des feuilles de calcul Google

Chaque feuille de calcul Google possède un fuseau horaire associé. Il est inclus dans les métadonnées renvoyées par gs4_get(), comme la langue, et est affiché par défaut lorsque nous imprimons un ID de feuille de calcul.

Cependant, ce fuseau horaire a un impact très différent – beaucoup moins d’impact – sur l’expérience utilisateur que le fuseau horaire en R.

Le fuseau horaire des feuilles de calcul n’influence pas l’affichage des datetimes. Il n’y a aucun moyen de demander qu’une datetime soit affichée selon un fuseau horaire spécifique – ni via le fuseau horaire de la feuille de calcul, ni via la chaîne de format, ni via une fonction des feuilles de calcul.

Les datetimes dans Google Sheets sont fondamentalement basés sur l’heure UTC et sont toujours affichés comme tels.

Si vous voulez voir « 09h14 » dans votre feuille de calcul, vous devez vous assurer que le numéro de série dans cette cellule représente 09h14 du matin, heure UTC.

À ce que je sache, voici le seul effet d’un fuseau horaire de feuille de calcul : les formules =MAINTENANT() et =AUJOURDHUI() prennent l’heure ou la date de l’horloge locale, selon le fuseau horaire de la feuille de calcul, et construisent le moment ou la date UTC qui sera affiché à cette heure ou date. Par conséquent, =MAINTENANT(), en particulier, est presque trompeur ! Il ne capture pas l’instant présent, en UTC, mais fabrique plutôt un instant UTC qui correspond à l’heure locale actuelle.

Cela suggère diverses astuces si vous voulez vraiment voir des heures spécifiques dans votre feuille de calcul, pour des fuseaux horaires autres que l’UTC.

En partant des moments UTC, vous devez déterminer et appliquer le décalage vous-même. À un niveau très rudimentaire, cela peut être fait à partir des principes de base de l’arithmétique des datetimes dans la feuille de calcul (« Vancouver est à -08h00, donc soustrayez 8 heures »). Mais ensuite, il y a le passage à l’heure d’été et d’autres complexités (« Sauf, pendant l’heure d’été, soustrayez 7 heures »). En réalité, aucun simple mortel ne pourra jamais le faire correctement, en général. Si vous doutez de moi, regardez la vidéo YouTube de Computerphile « The Problem with Time & Timezones ».

Vous devez utiliser des informations de décalage externes et fiables, soit dans R, soit dans la feuille de calcul. Ci-dessous, nous vous montrons comment le faire dans R. Dans les feuilles de calcul, les gens ont tendance à utiliser Google Apps Script et des solutions basées sur moment.js.

Pour en savoir plus sur l’utilisation de Google Sheets pour des tâches analytiques avancées, la manipulation de données et le partage de feuilles de calcul, consultez notre site web Crawlan.com.

Articles en lien