Fonction qui indique si une semaine est à cheval sur 1 mois. [Résolu]

eriz64 6 Messages postés mardi 10 avril 2007Date d'inscription 27 avril 2009 Dernière intervention - 3 avril 2009 à 16:30 - Dernière réponse : eriz64 6 Messages postés mardi 10 avril 2007Date d'inscription 27 avril 2009 Dernière intervention
- 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 ...
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
eriz64 6 Messages postés mardi 10 avril 2007Date d'inscription 27 avril 2009 Dernière intervention - 3 avril 2009 à 17:13
3
Merci
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

Merci eriz64 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 124 internautes ce mois-ci

Commenter la réponse de eriz64
Genildf 273 Messages postés lundi 12 janvier 2009Date d'inscription 30 décembre 2015 Dernière intervention - 3 avril 2009 à 16:58
0
Merci
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
Commenter la réponse de Genildf

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.