XL 2021 Calendrier des marées info

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
Bonjour à tous,

A ceux qui ont le pied marin,

je voulais savoir s'il était possible de créer un calendrier des marées avec :
-les heures de marée Haute
-les heures de marée Basse

et éventuellement les coefs.

Je ne sais pas du tout si c'est possible, mais si certains ont déjà étudiés sur la chose je suis preneur.

Je sais qu'il y a plein de site en ligne qui donne ce que je veux, mais se serait pour compléter un calendrier
avec les phases lunaires, éphémérides ..........

Si ça peut aider je suis de la région Lorientaise (Bretagne)

En vous remerciant d'avance.

Nicolas
 

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
oui
tu ne veux pas récupérer les dates déjà créé ou tu garde le 11 date du jours et aprè?
VB:
Private Sub UserForm_Initialize()

        Me.StartUpPosition = 1
        Me.Show 0
   
Set conn = CreateADODBConnection(ThisWorkbook.FullName)
With conn.Execute("Select distinct [Date] from [Marées$] order by [Date] DESC")
    If Not .EOF Then Dates.Column = .getrows
End With

Ton code j'ai pas compris, ça me donne bizard

test form6.gif
 

dysorthographie

XLDnaute Accro
En fait tu devrais accumulé des dates septembre, octobre,novembre etc. la date du jour devrait au fur et à mesure descendre dans la liste.

"Select distinct [Date] from [Marées$] order by [Date] DESC"

Ici je sélectionne sans doublons toutes les dates de l'onglet Marées ordonné de façon descendant de la date la plus récente à la plus ancienne

Mais comme tu double click sur un cellule de ton planning la les dates appartenos en encadré de celle sélectionné. Fait le test en double cliquant sur 31

Sachant en plus qu'il est possible de taper la date directement
 
Dernière édition:

dysorthographie

XLDnaute Accro
tu n'as pas supprimer ce code?
VB:
 For I = 0 To 10
        Dates.AddItem Date + I
    Next
Code:
    Me.StartUpPosition = 1
    Me.Show 0

    Me.MultiPage1.Value = 0

    Set conn = CreateADODBConnection(ThisWorkbook.FullName)
    With conn.Execute("Select distinct [Date] from [Marées$] order by [Date] DESC")
    If Not .EOF Then Dates.Column = .getrows
End With

    TablMois(1) = "Janvier"
    TablMois(2) = "Février"
    TablMois(3) = "Mars"
    TablMois(4) = "Avril"
    TablMois(5) = "Mai"
    TablMois(6) = "Juin"
    TablMois(7) = "Juillet"
    TablMois(8) = "Août"
    TablMois(9) = "Septembre"
    TablMois(10) = "Octobre"
    TablMois(11) = "Novembre"
    TablMois(12) = "Décembre"

    'chargement du tableau des Mois
    With Sheets("FichFetes").ListObjects("t_Mois")
        For I = 1 To .ListRows.Count
            TablMois(I) = Format(.ListColumns("Mois").DataBodyRange(I), "mmmm")
        Next I
    End With
    'chargement combo des prénoms
    With Sheets("FichFetes").ListObjects("t_Fetes")
        For I = 1 To .ListRows.Count
            Me.Cbx_Prénom.AddItem .ListColumns("Fete").DataBodyRange(I)
        Next I
    End With
End Sub
 

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
tu n'as pas supprimer ce code?
VB:
 For I = 0 To 10
        Dates.AddItem Date + I
    Next
Code:
    Me.StartUpPosition = 1
    Me.Show 0

    Me.MultiPage1.Value = 0

    TablMois(1) = "Janvier"
    TablMois(2) = "Février"
    TablMois(3) = "Mars"
    TablMois(4) = "Avril"
    TablMois(5) = "Mai"
    TablMois(6) = "Juin"
    TablMois(7) = "Juillet"
    TablMois(8) = "Août"
    TablMois(9) = "Septembre"
    TablMois(10) = "Octobre"
    TablMois(11) = "Novembre"
    TablMois(12) = "Décembre"

    'chargement du tableau des Mois
    With Sheets("FichFetes").ListObjects("t_Mois")
        For I = 1 To .ListRows.Count
            TablMois(I) = Format(.ListColumns("Mois").DataBodyRange(I), "mmmm")
        Next I
    End With
    'chargement combo des prénoms
    With Sheets("FichFetes").ListObjects("t_Fetes")
        For I = 1 To .ListRows.Count
            Me.Cbx_Prénom.AddItem .ListColumns("Fete").DataBodyRange(I)
        Next I
    End With
End Sub

Non du tout

VB:
Private Sub UserForm_Initialize()

    Me.StartUpPosition = 1
    Me.Show 0

    Set conn = CreateADODBConnection(ThisWorkbook.FullName)
    With conn.Execute("Select distinct [Date] from [Marées$] order by [Date] DESC")
        If Not .EOF Then Dates.Column = .getrows
    End With

    Me.MultiPage1.Value = 0

    TablMois(1) = "Janvier"
    TablMois(2) = "Février"
    TablMois(3) = "Mars"
    TablMois(4) = "Avril"
    TablMois(5) = "Mai"
    TablMois(6) = "Juin"
    TablMois(7) = "Juillet"
    TablMois(8) = "Août"
    TablMois(9) = "Septembre"
    TablMois(10) = "Octobre"
    TablMois(11) = "Novembre"
    TablMois(12) = "Décembre"

    'chargement du tableau des Mois
    With Sheets("FichFetes").ListObjects("t_Mois")
        For I = 1 To .ListRows.Count
            TablMois(I) = Format(.ListColumns("Mois").DataBodyRange(I), "mmmm")
        Next I
    End With
    'chargement combo des prénoms
    With Sheets("FichFetes").ListObjects("t_Fetes")
        For I = 1 To .ListRows.Count
            Me.Cbx_Prénom.AddItem .ListColumns("Fete").DataBodyRange(I)
        Next I
    End With
End Sub
 
Dernière édition:

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
Bonjour à tous,

Dernier petit réglage qui reste,
J'avais fait le code si dessous, qui fonctionnais très bien,

VB:
Sub Mareee(vdate As Date)

    A = Year(Range("B1")): M = month(Range("B1")): j = Left(ActiveCell, 2)
    vdate = DateSerial(A, M, j)

    Forme.Lbl_MaréeJour = IIf(vdate = Date, "Marée d'aujourd'hui", "Marée du" & " " & vdate)

    If vdate < Date Then
        Forme.Lbl_MaréeJour = "Les données ne sont plus disponibles"
        Forme.Lbl_MaréeJour.ForeColor = &HFF&
    End If

    If vdate > Date + 10 Then
        Forme.Lbl_MaréeJour = "Les données ne sont pas encore disponibles pour cette date"
        Forme.Lbl_MaréeJour.ForeColor = &HFF&
    End If

End Sub

les couleurs matchs mais pas les textes ??

les couleurs et textes sont réinitialisé à chaque "Worksheet_SelectionChange"

Code:
        .Lbl_MaréeJour = ""
        .Lbl_MaréeJour.ForeColor = -2147483630

Merci
Nicolas
 

dysorthographie

XLDnaute Accro
Bonjour,
Je suis sur mon téléphone portable.
Cette partie reste valide.
Code:
If vdate > Date + 10 Then
        Forme.Lbl_MaréeJour = "Les données ne sont pas encore disponibles pour cette date"
        Forme.Lbl_MaréeJour.ForeColor = &HFF&
    End
Pour cette partie il faut rajouter une méthode qui vérifie si la date est présente dans l'onglet Marées.
Code:
    If vdate < Date and DateMarrees=Ko Then
        Forme.Lbl_MaréeJour = "Les données ne sont plus disponibles"
        Forme.Lbl_MaréeJour.ForeColor = &HFF&
    End If
Ceci dit je gérerai ça dans le formulaire car tout les champs sont à "" si pas le couple ville date n'est pas trouvé
1725092574437.png
 

Pièces jointes

  • New Calendrier v2 (3).xlsm
    212.4 KB · Affichages: 0
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
313 908
Messages
2 103 459
Membres
108 673
dernier inscrit
georsol