XL 2019 Macro pour afficher l'heure GMT (Temps universel)

dodineau

XLDnaute Occasionnel
Bonjour,
J'ai fait une macro pour afficher l'heure TU dans la case A1.

VB:
Sub Heure_TU()
    Dim datetime As Object
    Set datetime = CreateObject("Wbemscripting.swbemdatetime")
    datetime.setvardate (FormatDateTime(Time))
    Range("A1") = datetime.getvardate(False)
End Sub

Le problème c'est que ça ne fonctionne qu'avec l'heure d'hiver, en ce moment (heure d'été en France), j'ai une heure de décalage.
Quelqu'un aurait-il une solution pour prendre en compte le passage hiver/été ?
Merci pour vote aide.
A+
 
Solution
Bonjour @dodineau,

Deux fonctions du bien connu Mr Rick Rothstein trouvé ici.
Copiez l'intégralité du code dans un module puis utilisez les fonctions Local2GMT ou GMT2Local en VBA ou sur une feuille excel.

Je ne suis pas allé voir si ces fonctions parlent du temps TAI, UTC ou GMT. L'heure GMT n'est normalement plus utilisée. Comme on traite plutôt de différences d'heure, ce n'est sans doute pas important. Je décline toute responsabilité quand aux conséquences d'utilisation de cette fonction :):D. En tout cas, en matière de dates et heures, les avertissements de @jmfmarques s'appliquent.

jmfmarques

XLDnaute Accro
Bonjour
Il en va dans ce domaine comme il en va dans de nombreux autres (jours ouvrés, etc ...) où les "arrêtés" peuvent varier d'une année à l'autre, d'un pays à l'autre (y compris sur le même fuseau).
Je ne connais personnellement pas de solution plus saine que celle d'une base de donnée mise à jour à la demande et dont les valeurs sont utiliser pour corriger (l'heure officielle), recenser (les jours chômés) etc ...
 

dodineau

XLDnaute Occasionnel
Merci pour cette solution, mais je ne pense pas qu'une base de données soit suffisante.
Le temps universel est le même pour toute la planète, donc je ne comprends pas pourquoi ça change en fonction de l'heure d'été ou d'hiver.
Cette fonction doit fonctionner sur n'importe que PC dans le monde...
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @dodineau,

Deux fonctions du bien connu Mr Rick Rothstein trouvé ici.
Copiez l'intégralité du code dans un module puis utilisez les fonctions Local2GMT ou GMT2Local en VBA ou sur une feuille excel.

Je ne suis pas allé voir si ces fonctions parlent du temps TAI, UTC ou GMT. L'heure GMT n'est normalement plus utilisée. Comme on traite plutôt de différences d'heure, ce n'est sans doute pas important. Je décline toute responsabilité quand aux conséquences d'utilisation de cette fonction :):D. En tout cas, en matière de dates et heures, les avertissements de @jmfmarques s'appliquent.
 
Dernière édition:

Modeste geedee

XLDnaute Barbatruc
Le system Windows permet la spécification du décalage horaire à appliquer au poste utilisateur
L'actualisation du passage horaire été/ horaire hiver est alors automatique .

encore faut-il autoriser windows à appliquer ces mises à jours
1588421475325.png
 

Discussions similaires

Réponses
0
Affichages
1 K

Statistiques des forums

Discussions
311 708
Messages
2 081 750
Membres
101 812
dernier inscrit
trufu