Fonction qui indique si une semaine est à cheval sur 1 mois.

Résolu
eriz64 Messages postés 6 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 27 avril 2009 - 3 avril 2009 à 16:30
eriz64 Messages postés 6 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 27 avril 2009 - 3 avril 2009 à 17:13
Bonjour j'aurai besoin d'une fonction qui me dise si une semaine est à cheval sur un mois .
C'est à dire qu'en fonction d'un numéro de semaine elle renvoie true si la semaine est a cheval sur 2 mois et false sinon.
Par exemple la semaine 14 est a cheval sur le mois de mars & sur celui d'avril.
J'ai un mal fous a gérer les dates dans VB.
Je me suis insipiré d'un fonction qui renvoie le numéro de la semaine en fonction d'une date pour réaliser ce quil me faut mais je ne m'en sort pas.

Si quelqu'un pouvais m'aider ...

2 réponses

eriz64 Messages postés 6 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 27 avril 2009
3 avril 2009 à 17:13
J'ai fait mon business bien plus compliquer que le tiens mais ça marche aussi donc c'est cool

Public Function NumMois(Dates As Date) As Integer
    Dim MyDate As String
    MyDate = Format(Dates, "dd/mm/yyyy")
    Dim TabSplit As Variant
    TabSplit = Split(MyDate, "/")
    NumMois = TabSplit(1)
End Function

Function LundiSem(SEMAINE As Integer, ANNEE As Integer) As Date    If ANNEE 0 Then ANNEE Year(Date)
        LundiSem = 7 * SEMAINE + DateSerial(ANNEE, 1, 3) - _
    Weekday(DateSerial(ANNEE, 1, 3)) - 5
End Function

Function DimancheSem(SEMAINE As Integer, ANNEE As Integer) As Date
    Dim Val As Date
    Val = LundiSem(SEMAINE, ANNEE)
    DimancheSem = DateAdd("d", 6, Val)
End Function

Function SemMois(SEMAINE As Integer, ANNEE As Integer) As Boolean
    Dim Lundi As Date
    Dim Dimanche As Date
    Lundi = LundiSem(SEMAINE, ANNEE)
    Dimanche = DimancheSem(SEMAINE, ANNEE)
    If (NumMois(Lundi) <> NumMois(Dimanche)) Then
        SemMois = True
    Else
        SemMois = False
    End If
End Function
3
Genildf Messages postés 270 Date d'inscription lundi 12 janvier 2009 Statut Membre Dernière intervention 30 décembre 2015 1
3 avril 2009 à 16:58
Tu cherche tout simplement si le dernier jour de ton mois est un dimanche et si c'est pas le cars sa signifie que c a cheval

ou alors tu test si la valeur day du dimanche est < a celle du lundi sa veut dire que c'est a cheval
0
Rejoignez-nous