Discussion:
retrouver l'heure local à partir d'une date et heure UTC
Add Reply
f4crw
2017-01-24 10:21:20 UTC
Réponse
Permalink
Raw Message
Bonjour à tous,

Je désire retrouver l'heure local (pour la France) à partir d'une date et heure UTC.

je m'explique de la cellule (Date et Heure UTC) comment retrouver l'heure d'été ou d'hiver en France (+1 ou +2)

en résumé = si à la date on est dans les horaires d'été >>>>> l'heure UTC + 2 si non =UTC + 1

je vous joins un fichier pour exemple.

http://www.cjoint.com/c/GAykoSnUcSC

Merci d'avance.

Régis
LSteph
2017-01-24 11:10:22 UTC
Réponse
Permalink
Raw Message
Bonjour,

la réponse est dans la question, te reste à poser la condition
après avoir, par rapport à l'année de la date, calculé et posé chacune dans une cellule ces dates de passage
voir ici si ça t'aide:
http://forums.futura-sciences.com/mathematiques-superieur/36243-passage-heure-dete-heure-hiver.html

Cdlt.

--
LSteph
Jacquouille
2017-01-24 11:17:55 UTC
Réponse
Permalink
Raw Message
Bonjour

=si(et(date_choisie>3°samedi de mars;<dernier samedi octobre);heure
été;heure hiver)

à toi de mettre ces variables dans des cel, pour en arriver à ceci:
=si(et(A3>A4;<A5);(UTC+2);(UTC+1))

Jacques
" Le vin est au repas ce que le parfum est à la femme."
.
"f4crw" a écrit dans le message de groupe de discussion :
c2ab9c52-0ee0-407e-a71f-***@googlegroups.com...

Bonjour à tous,

Je désire retrouver l'heure local (pour la France) à partir d'une date et
heure UTC.

je m'explique de la cellule (Date et Heure UTC) comment retrouver l'heure
d'été ou d'hiver en France (+1 ou +2)

en résumé = si à la date on est dans les horaires d'été >>>>> l'heure UTC
+ 2 si non =UTC + 1

je vous joins un fichier pour exemple.

http://www.cjoint.com/c/GAykoSnUcSC

Merci d'avance.

Régis


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
MichD
2017-01-24 11:19:05 UTC
Réponse
Permalink
Raw Message
Bonjour,

Regarde ici, tu as toutes les explications désirées sur le sujet:

http://www.cpearson.com/excel/LocalAndGMTTimes.htm

MichD
MichD
2017-01-24 11:33:54 UTC
Réponse
Permalink
Raw Message
Au besoin, si tu as besoin de trouver la date :
A ) dernier samedi du mois de mars
OU
B ) dernier samedi du mois d'octobre

Tu peux utiliser cette formule : en A1 : Date reconnue par Excel.
Selon cette date en A1, tu obtiens la date du dernier samedi du mois.
=DATE(ANNEE(A1);MOIS(A1)+1;1)-JOURSEM(DATE(ANNEE(A1);MOIS(A1)+1;1))

MichD
f4crw
2017-01-24 12:44:45 UTC
Réponse
Permalink
Raw Message
Merci à tous pour vos retours.
On m'a envoyé cette formule qui semble convenir !
=SI(ET(C4>DATE(ANNEE(C4);3;32-JOURSEM(DATE(ANNEE(C4);3;31);1))+TEMPS(1;0;0);C4<=DATE(ANNEE(C4);10;32-JOURSEM(DATE(ANNEE(C4);10;31);1))+TEMPS(1;0;0));TEMPS(HEURE(C4)+2;MINUTE(C4);SECONDE(C4));TEMPS(HEURE(C4)+1;MINUTE(C4);SECONDE(C4)))

Régis
MichD
2017-01-24 17:12:36 UTC
Réponse
Permalink
Raw Message
Est-ce que ceci te retourne toujours la date du dernier samedi du mois de mars?

=DATE(ANNEE(C4);3;32-JOURSEM(DATE(ANNEE(C4);3;31);1))

Même chose pour la section de la formule représentant la date du dernier samedi du mois
d'octobre ?

As-tu testé? Moi, non...mais je suis sceptique!

MichD
f4crw
2017-01-25 10:00:42 UTC
Réponse
Permalink
Raw Message
Post by MichD
Est-ce que ceci te retourne toujours la date du dernier samedi du mois de mars?
=DATE(ANNEE(C4);3;32-JOURSEM(DATE(ANNEE(C4);3;31);1))
Même chose pour la section de la formule représentant la date du dernier samedi du mois
d'octobre ?
As-tu testé? Moi, non...mais je suis sceptique!
MichD
Bonjour Non présenter comme ça ce n'est pas bon pour la date, mais dans mon cas c'est l'heure que je recherche et ça me fait bien ce que je veux.(il me semble???)
J'avoue que je suis largué c'est trop compliqué pour moi!
je précise que c'est bien une heure issue d'un fichier comme dans le classeur que j'ai joins et non l'heure système que je recherche.
Merci à tous
Régis

http://www.cjoint.com/c/GAzj76WVW2C
MichD
2017-01-25 11:32:10 UTC
Réponse
Permalink
Raw Message
Si tu débutes avec Excel, je comprends que c'est peut-être un peu compliqué...

Si tu veux ajouter une "heure" à l'heure avancée (été) et 2 heures à l'heure normale (Hiver).
Comme tu connais le jour de l'année où la modification de l'heure s'effectue, tu as besoin
d'une formule pour identifier ces 2 dates. Ces 2 dates changent régulièrement en fonction de
l'année. Regarde dans un calendrier (coin inférieur gauche du bureau de Windows) le dernier
samedi de mars, ce n'est pas toujours la même date du mois... même chose pour octobre...

J'ai utilisé 2 noms "Oct" et "Mars" dans la formule générale. Un nom peut contenir une
formule,et non pas seulement une plage de cellules. L'objectif de ces 2 noms est d'essayer de
simplifier la formule et la rendre plus compréhensible.

Oct : =DATE(ANNEE(AUJOURDHUI());10;1)
La section ANNEE(AUJOURDHUI()) retourne l'année de la date d'aujourd'hui. Si tu peux remplacer
cela par l'adresse d'une cellule contenant une date d'une autre année au besoin...

Je m'arrête ici. Dans le message précédent, j'ai déjà expliqué chaque élément de la formule. À
toi maintenant de faire l'effort nécessaire pour comprendre la mécanique de la formule!
Personne n'a dit qu'Excel était simple... ;-))

MichD

MichD
2017-01-24 16:59:50 UTC
Réponse
Permalink
Raw Message
Voici une manière de procéder que tu dois adapter selon ton application:

Oct : représente une formule que j'ai mise dans un "NOM"
Oct : =DATE(ANNEE(AUJOURDHUI());10;1)
Ceci représente toujours le 1 octobre de l'année en cours

Mars : Représente une formule qui donne le 1 mars de l'année suivante
=DATE(ANNEE(AUJOURDHUI())+1;10;1)

Si tu as besoin une référence à une année particulière, remplace dans les
2 formules précédentes la fonction "Ajourdhui() par l'adresse de la cellule
en référence absolue ou non selon que tu doives copier cette formule
sur une colonne...

Cette formule retourne toujours la date précise du dernier samedi du mois octobre
au moment où l'heure change.
=DATE(ANNEE(Oct);MOIS(Oct)+1;1)-JOURSEM(DATE(ANNEE(Oct);MOIS(Oct)+1;1))

Cette formule représente toujours la date précise du dernier samedi de Mars au
moment l'heure change.
=DATE(ANNEE(Mars);MOIS(Marst)+1;1)-JOURSEM(DATE(ANNEE(Mars);MOIS(Mars)+1;1))

Il s'agit maintenant de combiner les 2 formules précédentes dans la même formule.

J'ai supposé qu'en A1, j'ai l'heure
en A2 , une date de l'année courante

Si A2 > Dernier Samedi Octobre
ET A2 Plus petit ou égal au dernier samedi de mars de l'année suivante,
si vrai -> ajouter 1 heure à A1; si Faux -> ajouter 2 heures à A1

La formule est :
=SI(ET(A2>DATE(ANNEE(Oct);MOIS(Oct)+1;1)-JOURSEM(DATE(ANNEE(Oct);MOIS(Oct)+1;1));A2<=DATE(ANNEE(Mars);MOIS(Mars)+1;1)-JOURSEM(DATE(ANNEE(Mars);MOIS(Mars)+1;1)));A1+(2/24);A1+(1/24))

2/24 représente 2 heures et 1/24 représente une heure.

Tu mets le format heure que tu veux à la cellule affichant le résultat.

Voilà!

Michd
pom...pom...pom..
2017-01-24 21:20:32 UTC
Réponse
Permalink
Raw Message
Bonsour®

"f4crw" a écrit dans le message de groupe de discussion :
c2ab9c52-0ee0-407e-a71f-***@googlegroups.com...

Bonjour à tous,

Je désire retrouver l'heure local (pour la France) à partir d'une date et heure
UTC.

Comment voulez-vous que EXCEL sache ce décalage à part consulter une horloge
Externe ??? et en tirer les conclusions par rapport aux paramètres modifiables
Windows de votre PC ?

Cependant si votre Ordinateur et les options Windows paramètres régionaux sont
corrects et à Jour (i.e. zone horaire et mise à jour auto de l'horaire
été/hiver)
alors mettre ces lignes de code dans un module standard

nb : il existait sur Excelabo un classeur de Michel Pierron permettant l'accès
à ces informations .
et notamment une info Décalage faisant appel à la table interne Windows des
fuseaux horaires
'=====================================
Option Explicit
Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

Private 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
'-----------------------------------------
' Utilisation :
' =Time_Local()
Function Time_Local() As String
'KPD-Team 1998
'URL: http://www.allapi.net/
'E-Mail: ***@Allapi.net
Dim MyTime As SYSTEMTIME
'Get the local time
GetLocalTime MyTime
Time_Local = "Local Date is:" & MyTime.wYear & "-" & MyTime.wMonth & "-" &
MyTime.wDay & " Local Time is:" & MyTime.wHour & ":" & MyTime.wMinute & ":" &
MyTime.wSecond
End Function
'---------------------------------------
' Utilisation :
' =Time_UTC()
Function Time_UTC() As String
'KPD-Team 1998
'URL: http://www.allapi.net/
'E-Mail: ***@Allapi.net
Dim MyTime As SYSTEMTIME
'Get the local time
GetSystemTime MyTime
Time_UTC = "UTC Date is:" & MyTime.wYear & "-" & MyTime.wMonth & "-" &
MyTime.wDay & " UTC Time is:" & MyTime.wHour & ":" & MyTime.wMinute & ":" &
MyTime.wSecond
End Function
'--------------------------------------
pom...pom...pom..
2017-01-24 21:24:52 UTC
Réponse
Permalink
Raw Message
"pom...pom...pom.." a écrit dans le message de groupe de discussion :
o68gf0$v2m$***@gioia.aioe.org...
Cependant si votre Ordinateur et les options Windows paramètres régionaux sont
corrects et à Jour (i.e. zone horaire et mise à jour auto de l'horaire
été/hiver)

http://www.cjoint.com/c/GAyvxHeDPWd
isabelle
2017-01-25 02:30:20 UTC
Réponse
Permalink
Raw Message
bonjour Régis,

voici un fichier exemple très complet sur le sujet:
http://www.cjoint.com/c/GAzcyUwiWTa

explication ici:http://www.cpearson.com/excel/LocalAndGMTTimes.htm
le fichier est aussi téléchargeable à partir de ce lien: voir You can download a
bas code module or a complete workbook

isabelle
Post by f4crw
Bonjour à tous,
Je désire retrouver l'heure local (pour la France) à partir d'une date et heure UTC.
je m'explique de la cellule (Date et Heure UTC) comment retrouver l'heure d'été ou d'hiver en France (+1 ou +2)
en résumé = si à la date on est dans les horaires d'été >>>>> l'heure UTC + 2 si non =UTC + 1
je vous joins un fichier pour exemple.
http://www.cjoint.com/c/GAykoSnUcSC
Merci d'avance.
Régis
Loading...