Bonjour à tous,
Avec chatGPT, j'ai fait une approche sur le calcul de l'heure quand le soleil est au Zénith, mais pas bon, mon format reçu n'est pas celui souhaité.
Le résultat est en cellule "B20"
Je ne sais pas si c'est juste une histoire de format ou de conversion, je devrais avoir 14h18m à une ou deux minutes prêt.
J'ai pris ma position sur Lorient.
Merci à tous
Nicolas
Avec chatGPT, j'ai fait une approche sur le calcul de l'heure quand le soleil est au Zénith, mais pas bon, mon format reçu n'est pas celui souhaité.
Le résultat est en cellule "B20"
Je ne sais pas si c'est juste une histoire de format ou de conversion, je devrais avoir 14h18m à une ou deux minutes prêt.
VB:
Function ZenithTime(ByVal Date_ As Date, ByVal Longitude As Double) As Double
A = Year(Range("B1"))
M = Month(Range("B1"))
J = ActiveCell.Value
vdate = DateSerial(A, M, J)
' Variables
Dim n As Double ' Nombre de jours depuis le 1er janvier de l'année
Dim B As Double ' Correction pour l'équation du temps
Dim EoT As Double ' Équation du temps en minutes
Dim SolarNoon As Double ' Midi solaire en heures
' Nombre de jours depuis le début de l'année
n = DateSerial(Year(A), Month(M), Day(J)) - DateSerial(Year(A), 1, 1) + 1
' Calcul de l'équation du temps (EoT)
B = (n - 81) * (360 / 365)
EoT = 9.87 * Sin(2 * Application.WorksheetFunction.Radians(B)) - 7.53 * Cos(Application.WorksheetFunction.Radians(B)) - 1.5 * Sin(Application.WorksheetFunction.Radians(B))
' Calcul de l'heure du zénith solaire (en heures)
SolarNoon = 12 + (4 * Longitude - EoT) / 60
' Retourner l'heure du zénith en heures décimales
ZenithTime = SolarNoon
End Function
Sub testzenith()
Cells(20, 2) = ZenithTime(vdate, -3.36667)
End Sub
J'ai pris ma position sur Lorient.
Merci à tous
Nicolas