Timestamp en Date avec PowerQuery

Timestamp

Certaines bases de données utilisent le Timestamp comme base de temps.  Pour nous, cela implique inconvénient dont le principal est le fait qu’il n’est pas parlant pour un humain. Il faut donc le convertir. L’objet de cette recette est donc de vous expliquer comment le convertir.

Le timestamp désigne le nombre de secondes écoulées depuis le 1er janvier 1970 à minuit UTC précise. Les avantages sont multiples :

  • facilite la comparaison de date, puisque ça revient à faire une différence entre 2 nombres
  • géré par la plupart des langage et SGBD
  • universel, puisque pas de notion de fuseaux horaire

Quelques inconvénients :

  • le nombre en lui-même n’est pas parlant pour un humain, obligé de passer par un convertisseur
  • ne gère pas (nativement) avant 1970, donc pour gérer les dates de naissances par exemple, ce n’est pas l’idéal

Vous pouvez vous amusez à convertir les date/heure en Timestamp en allant sur le site www.timestamp.fr

Timestamp_01

Dans PowerQuery

Nous allons tout d’abord ajouter une colonne personnalisée

Timestamp_02

Remplissez comme suit:

Timestamp_03

La formule a entrer est la suivante:
#datetime(1970,1,1,0,0,0)+#duration(0,1,0,[TIMESTAMP])

#datetime(année,mois,jour,heure,minute,seconde)

Renvoie la date correspondante. Dans notre cas: 01/01/1970 00:00

#duration(jours,heures,minutes,secondes)

Durée en secondes. On ajoute donc le nombre de seconde à la date du 01/01/1970. Avec cette fonction, il est donc très facile d’additionner des durées comme des jours ou des heures également.

Vous pouvez voir le résultat:

Timestamp_04

Remarquez qu’il est indiqué 13:13 au lieu de 14:13. Cela est dû à l’heure d’été que nous avons en France. Pour le corriger, vous pouvez utiliser la formule suivante:

#datetime(1970,1,1,0,0,0)+#duration(0,2,0,[TIMESTAMP])

Timestamp_05

Conclusion

Pour finir, n’oubliez JAMAIS de mettre au bon format (indispensable avec PowerQuery):

Timestamp_06

Puis supprimez les colonnes TIMESTAMP:
Sélectionner la colonne > clic-droit > Supprimer

Puis chargez les données:
Accueil > Fermer et charger

Le résultat est le suivant:

Timestamp_07

J’espère que si vous êtes confronté à ce genre de problème (j’y suis très fréquemment confronté !), vous saurez à présent trouver le bonne solution.

Site Footer

Sliding Sidebar

Inscrivez-vous et recevez ce livre gratuitement (cliquez sur l'image)

En savoir plus sur Cooking-Excel

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Continue reading