Gestion des dates sous Excel
Aller à la navigation
Aller à la recherche
Excel gère ses dates (ses timestamps pour être précis) avec un nombre flottant. ce nombre indique le nombre de jours depuis le... 0/01/1900. Oui ils ont crée un jours "zéro" avant le 1/1/1900.
- Ce nombre est obligatoirement positif donc impossible de coder des dates < 1900
- La partie décimale indique l'heure de la journée en fraction de journée. Excel gère des nombres flotants avec 15 décimales soit une précision en dessous de la seconde
Conversion Excel vers Epoch
La formule (si la date Excel est en A1)
= (A1-DATE (1970,1,1)) * 86400 |
Ce qui correspond à:
= (A1-25569) * 86400 |
Quelques dates clés :
Conversion Epoch vers Excel
C'est la formule inverse. En "Python" ca donne:
# -*- coding: utf-8 -*-
"""
Created on Wed Jun 28 10:02:09 2023
@author: Jean
"""
import time
epoch_time = int(time.time())
exceldatetime=(2209161600-epoch_time)/86400
print (epoch_time)
print (exceldatetime)
A l'heure ou j'écris ces lignes (l'expression n'aura jamais été aussi justifiée) j'obtiens:
1687939772
6032.660046296296
Si on copie 6032.660046296296 dans excel
Formatage en texte
On a un équivalant du 'to_char' de SAL dans Excel qui s'appelle TEXTE. Oui c'est du français !
Le format est donné aussi avec des abréviations... en francais!
Valeur / date | Format | Résultat |
---|---|---|
45315 - 24/01/2024 | jj/mm/aaaa | 24/01/2024 |
45315 - 24/01/2024 | jj.mm.aa | 24.01.24 |
45315 - 24/01/2024 | j-m-aa | 24-1-24 |
45315 - 24/01/2024 | jj | 24 |
45315 - 24/01/2024 | jjj | mer. |
45315 - 24/01/2024 | jjjj | mercredi |
45315 - 24/01/2024 | mm | 01 |
45315 - 24/01/2024 | mmm | janv. |
45315 - 24/01/2024 | mmmm | janvier |
45315 - 24/01/2024 | aa | 24 |
45315 - 24/01/2024 | aaaa | 2024 |
C'est moche mais c'est comme ça.