[VBA/Excel] Conversion automatique date UTC

Fermé
Pitipilot - Modifié par Pitipilot le 11/05/2011 à 11:19
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 11 mai 2011 à 16:09
Bonjour, je suis actuellement en train de récupérer des informations sur une base de données MSSQL 2005 et je me heurte à un sacré problème :

Je veux trier ma base de donnée en fonction de la date et de l'heure. Sauf que les timestamps de ma base de donnée sont en heure UTC (pas moyen de changer ça malheureusement). L'idée serait de charger les dates UTC et de les convertir en fonction de leur décalage horaire (+1 heure en hiver et +2 heures en été).

J'ai déjà trouvé un bout de code mais je ne sais pas comment l'utiliser :


' Convert a Date into a SYSTEMTIME.
Private Sub DateToSystemTime(ByVal the_date As Date, ByRef _
system_time As SYSTEMTIME)
With system_time
.wYear = Year(the_date)
.wMonth = Month(the_date)
.wDay = Day(the_date)
.wHour = Hour(the_date)
.wMinute = Minute(the_date)
.wSecond = Second(the_date)
End With
End Sub

' Convert a SYSTEMTIME into a Date.
Private Sub SystemTimeToDate(system_time As SYSTEMTIME, _
ByRef the_date As Date)
With system_time
the_date = DateSerial(.wYear, .wMonth, .wDay) + _
TimeSerial(.wHour, .wMinute, .wSecond)
End With
End Sub


' Convert a UTC time into local time.
Private Function UTCToLocalTime(ByVal the_date As Date) As _
Date
Dim system_time As SYSTEMTIME
Dim local_file_time As FILETIME
Dim utc_file_time As FILETIME

' Convert it into a SYSTEMTIME.
DateToSystemTime the_date, system_time

' Convert it to a UTC time.
SystemTimeToFileTime system_time, utc_file_time

' Convert it to a FILETIME.
FileTimeToLocalFileTime utc_file_time, local_file_time

' Convert it to a SYSTEMTIME.
FileTimeToSystemTime local_file_time, system_time

' Convert it to a Date.
SystemTimeToDate system_time, the_date

UTCToLocalTime = the_date
End Function
A voir également:

1 réponse

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 11/05/2011 à 16:10
bonjour,

annulé, excusez moi
1
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 12/05/2011 à 22:45
adaptation à la date UTC (on suppose au format excel de date

12/5 22:45
code supprimé en attendant des nouvelles hypothétiques du Sieur Pitipilot
0