Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Timestamp

19 réponses
Avatar
LargoWinch
Bonjour,

existe-t-il un moyen de calculer un timestamp (=Nbre de secondes
écoulées depuis le 01/01/1970 en UTC) avec Excel ?
La difficulté (pour moi) est d'obtenir une date UTC.

Merci

9 réponses

1 2
Avatar
Misange
> Il reste étonnant que sous unix il y ait des fonctions toutes prêtes


> pour ça, et rien dans le monde Windows...
Tout simplement parce que le timestamp c'est un machin Unix !
considérer que le timestamp d'unix est aussi universel que le TU est une
façon de voir... Pourquoi démarrer à cette date ? et pas au 1/1/1900 à
0h ou au 01/01/01 tant qu'à faire (avec les décalages de calendrier
c'est sur c'est pas le mieux). quand un fournisseur, quel qu'il soit
"décide" d'une norme, il ne faut pas s'attendre à ce que ses concurrents
sautent de joie en disant oh la belle idée. C'est comme ça dans tous les
domaines.

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
Avatar
Caetera
> Il reste étonnant que sous unix il y ait des fonctions toutes prêtes pour ça,
et rien dans le monde Windows...



Passage à l'heure d'été (dernier dimanche de mars) :
ÚTE(An;3;31)-MOD(JOURSEM(DATE(An;3;31);2);7

Passage à l'heure d'hiver (dernier dimanche d'octobre) :
ÚTE(An;10;31)-MOD(JOURSEM(DATE(An;10;31);2);7)

Etc
Avatar
LargoWinch
Misange a écrit :
> Il reste étonnant que sous unix il y ait des fonctions toutes prêtes
> pour ça, et rien dans le monde Windows...
Tout simplement parce que le timestamp c'est un machin Unix !


Effectivement...
Je pourrais alors reformuler ma remarque ainsi : il reste étonnant qu'il
n'existe pas de fonction native Excel permettant de récupérer le TU, en
fonction des paramètres régionaux (ce qui, soit dit en passant, m'aurai
permis d'avoir la solution sans solliciter le forum).


considérer que le timestamp d'unix est aussi universel que le TU est une
façon de voir...



Oh, je ne considère rien ! Je travaille sur une appli qui "marque" les
enregistrement avec un timestamp, et, ayant besoin de valider ces
timestamps, j'ai besoin de calculer dans un sens et dans l'autre.

Pourquoi démarrer à cette date ? et pas au 1/1/1900 à
0h ou au 01/01/01 tant qu'à faire (avec les décalages de calendrier
c'est sur c'est pas le mieux). quand un fournisseur, quel qu'il soit
"décide" d'une norme, il ne faut pas s'attendre à ce que ses concurrents
sautent de joie en disant oh la belle idée. C'est comme ça dans tous les
domaines.



Et oui... malheureusement. Pas plus tard que tout a l'heure je me suis
pris la tête pour choisir un câble d'antenne : 9,5 ou 9,52mm... Quel est
le c!n qui a décidé d'ajouter 0.02mm au diamètre des prises télé ???



Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net


Avatar
isabelle
bonjour LargoWinch,

poutant le résultat est : 3274335016

voici l'exemple : http://cjoint.com/?cBpKOvicad

isabelle

LargoWinch a écrit :
isabelle a écrit :
bonjour LargoWinch,

=MAINTENANT()-1970-1-1
au format : [ss]

isabelle



Soit je n'ai pas compris, soit ca ne marche pas, j'obtiens un nombre a
2 chiffres.


Avatar
LargoWinch
isabelle a écrit :
bonjour LargoWinch,

poutant le résultat est : 3274335016

voici l'exemple : http://cjoint.com/?cBpKOvicad

isabelle



Ok, merci.

Quoiqu'il en soit, ca ne le calcule pas en UTC.
Avatar
isabelle
bonjour LargoWinch,

la différence à ce jour est de 33 secondes à ajouter
http://fr.wikipedia.org/wiki/Temps_universel_coordonn%C3%A9

3274335016 + 33 = 3274335049
à remettre au format date de ton choix,

isabelle

LargoWinch a écrit :
isabelle a écrit :
bonjour LargoWinch,

poutant le résultat est : 3274335016

voici l'exemple : http://cjoint.com/?cBpKOvicad

isabelle



Ok, merci.

Quoiqu'il en soit, ca ne le calcule pas en UTC.


Avatar
LargoWinch
isabelle a écrit :
bonjour LargoWinch,

la différence à ce jour est de 33 secondes à ajouter
http://fr.wikipedia.org/wiki/Temps_universel_coordonn%C3%A9

3274335016 + 33 = 3274335049
à remettre au format date de ton choix,

isabelle



Non, je parle de la différence entre UTC et heure locale ou légale
(cf http://fr.wikipedia.org/wiki/Temps_universel_coordonn%C3%A9 : "Comme
le temps UTC est le temps civil du méridien origine des longitudes à
Greenwich..."
et
http://fr.wikipedia.org/wiki/Fuseau_horaire : "Les États définissent
l'heure légale sur leur territoire à l'aide d'un décalage fixe par
rapport au temps universel coordonné (UTC). Ce décalage est le plus
souvent égal à un nombre entier d'heures, mais certains pays emploient
un décalage à la demi-heure, voire au quart d'heure".

.
Avatar
Modeste
Bonsour® LargoWinch

Bonjour,

existe-t-il un moyen de calculer un timestamp (=Nbre de secondes
écoulées depuis le 01/01/1970 en UTC) avec Excel ?
La difficulté (pour moi) est d'obtenir une date UTC.



en utilisant les API
The GetSystemTime function retrieves the current system date and time. The system time is expressed in Coordinated Universal Time (UTC).

voir autres exemples en fin de message ci-dessous

'======================== ========================= ====

Option Explicit
Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End Type

Sub UTC_Time()
Dim SysTime As SYSTEMTIME
Dim MyTime As SYSTEMTIME
GetLocalTime MyTime
GetSystemTime SysTime
MsgBox "la date systeme est " _
& Chr(10) & Format(DateSerial(SysTime.wYear, SysTime.wMonth, SysTime.wDay), "dddd dd mmmm yyyy") _
& " " & Format(TimeSerial(SysTime.wHour, SysTime.wMinute, SysTime.wSecond), "hh:mm:ss") & " UTC" _
& Chr(10) & Format(DateSerial(MyTime.wYear, MyTime.wMonth, MyTime.wDay), "dddd dd mmmm yyyy") _
& " " & Format(TimeSerial(MyTime.wHour, MyTime.wMinute, MyTime.wSecond), "hh:mm:ss") & " Local", vbInformation, "selon parametrage de ce poste"
End Sub

voir aussi :
http://excelabo.net/excel/compteclic.php?nom=mp-timezone
http://excelabo.net/excel/compteclic.php?nom=gd-worldtime
Avatar
LargoWinch
Modeste a écrit :
Bonsour® LargoWinch

Bonjour,

existe-t-il un moyen de calculer un timestamp (=Nbre de secondes
écoulées depuis le 01/01/1970 en UTC) avec Excel ?
La difficulté (pour moi) est d'obtenir une date UTC.



en utilisant les API
The GetSystemTime function retrieves the current system date and time. The system time is expressed in Coordinated Universal Time (UTC).

voir autres exemples en fin de message ci-dessous

'==================================================== >
Option Explicit
Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End Type

Sub UTC_Time()
Dim SysTime As SYSTEMTIME
Dim MyTime As SYSTEMTIME
GetLocalTime MyTime
GetSystemTime SysTime
MsgBox "la date systeme est " _
& Chr(10) & Format(DateSerial(SysTime.wYear, SysTime.wMonth, SysTime.wDay), "dddd dd mmmm yyyy") _
& " " & Format(TimeSerial(SysTime.wHour, SysTime.wMinute, SysTime.wSecond), "hh:mm:ss") & " UTC" _
& Chr(10) & Format(DateSerial(MyTime.wYear, MyTime.wMonth, MyTime.wDay), "dddd dd mmmm yyyy") _
& " " & Format(TimeSerial(MyTime.wHour, MyTime.wMinute, MyTime.wSecond), "hh:mm:ss") & " Local", vbInformation, "selon parametrage de ce poste"
End Sub

voir aussi :
http://excelabo.net/excel/compteclic.php?nom=mp-timezone
http://excelabo.net/excel/compteclic.php?nom=gd-worldtime




Magnifique !

Merci !
1 2