IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussions diverses VB Discussion :

Affichage de date


Sujet :

Discussions diverses VB

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut Affichage de date
    bonjour

    je cherche une aide pour ma petite application concernant l'affichage des dates suite la règle comme suit:
    une fonction ou astuce qui me donne si je saisie la date de premier mardi d'un mois quelconque j’obtiens dans le 1er label le premier date du mois suivant et le 2eme label le premier mardi du mois qui suit et ainsi de suite;
    et si le mois contient cinq mardi ,ce dernier se considère comme le premier du mois suivant

    merci d'avance

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub Text1_KeyPress(KeyAscii As Integer)
    If KeyAscii = 13 Then
        KeyAscii = 0
        If IsDate(Text1.Text) Then
            Dim TheDate As Date, T As Integer
            TheDate = "01/" & Month(Text1.Text) & "/" & Year(Text1.Text)
            Label1.Caption = DateAdd("m", 1, TheDate)
            TheDate = DateAdd("m", 1, TheDate)
            For T = 0 To 7
                If Weekday(DateAdd("d", T, TheDate)) = vbTuesday Then
                    Label2.Caption = DateAdd("d", T, TheDate)
                    Exit For
                End If
            Next T
        End If
    End If
    End Sub
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Bonjour
    Je veux dire si je tape la date du premier mardi d'un mois M qque .j'obtiens en premier label le premier mardi du mois M+1 en label 2 le premie mardi du mois M+2 ainsi de suite. Meme chose pour 2eme et 3eme et 4eme mardi.et si je tape le cinquieme mardi se considere comme le premier
    Merci bcp

  4. #4
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Salut
    Il me semble bien que la réponse proposée contient tout ce qu'il faut pour ton besoin, il te reste à adapter plus finement pour arrivée au meilleur résultat.
    En complément, tu peux consulter ce lien: Manipulation de dates
    Un début de code de ta par permettra de mieux comprendre le but de ton programme.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  5. #5
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Salut

    Un dernier coup de pousse, car toujours pas ????
    Sur un Form 1 TextBox et 4 Labels (autoSize = true), et ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Private Sub Text1_KeyPress(KeyAscii As Integer)
    If KeyAscii = 13 Then
        KeyAscii = 0
        If IsDate(Text1.Text) Then Affiche CVDate(Text1.Text)
    End If
    End Sub
     
    Private Sub Affiche(UneDate As Date)
    Dim TheDate As Date, TheDateFin As Date, T As Integer, U As Integer
     
    ' 1° jour du mois proposé
    TheDate = "01/" & Month(UneDate) & "/" & Year(UneDate)
    Label1.Caption = "1° jour du mois proposé: " & TheDate
     
    'verifier si le mois contient plus de 4 mardi
    TheDateFin = DateAdd("m", 1, TheDate) ' ajoute 1 mois
    TheDateFin = DateAdd("d", -1, TheDateFin) ' enleve 1 jour pour avoir le dernier jour du mois proposé
    Label2.Caption = "Dernier jour du mois proposé: " & TheDateFin
    For T = 0 To Day(TheDateFin)
        If Weekday(DateAdd("d", T, TheDate)) = vbTuesday Then U = U + 1
    Next T
    Label3.Caption = "Nombre de mardi du mois proposé: " & U
     
    If U < 5 Then
        TheDate = DateAdd("m", 1, TheDate) ' ajoute 1 mois au  1° jour du mois suivant le mois proposé
        For T = 0 To 7
            If Weekday(DateAdd("d", T, TheDate)) = vbTuesday Then
                Label4.Caption = "1° mardi du mois suivant le mois proposé: " & DateAdd("d", T, TheDate) ' 1° mardi du mois suivant le mois proposé
                Exit For
            End If
        Next T
        Else
        For T = Day(TheDateFin) To (Day(TheDateFin) - 7) Step -1
            If Weekday(CVDate(T & "/" & Month(TheDateFin) & "/" & Year(TheDateFin))) = vbTuesday Then 'dernier mardi du mois proposé
                Label4.Caption = "Dernier mardi du mois proposé: " & CVDate(T & "/" & Month(TheDateFin) & "/" & Year(TheDateFin))
                Exit For
            End If
        Next T
    End If
     
    End Sub
    2 exemples:
    1er, date proposé d'un mois de 4 mardi -------- 2éme, date proposé d'un mois de 5 mardi
    Nom : ProgDates.jpg
Affichages : 968
Taille : 61,6 Ko
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    bonsoir

    merci d'avance pour ton aide;
    j'ai essayé sur vb.net ça marche bien mais ce qu'il me reste comme j'ai le dis si je saisi dans textbox une date correspondante au deuxième mardi d'un mois ,j'obtiens en label1 la date de deuxième mardi du mois M+1 et en label2 le deuxième mardi du mois M+2, et en label3 le deuxième mardi du mois M+3 et ainsi de suite

    merci d'avance

  7. #7
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Salut

    Un code de démonstration, à toi d'adapter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    Private Sub Command1_Click()
    'si je saisi dans textbox une date correspondante au deuxième mardi d'un mois
    'label1 la date de deuxième mardi du mois M+1 et en
    'label2 le deuxième mardi du mois M+2, et en
    'label3 le deuxième mardi du mois M+3 et ainsi de suite
    Dim DateSaisie As Date, RecupDate As Date
    Dim Msg As String, U As Integer
     
    'DateSaisie = CDate(Text1.Text)
     
    DateSaisie = CDate("05/04/2017")
    RecupDate = DateSuivante(DateSaisie)
    Msg = "Label1= " & RecupDate & vbNewLine
    For U = 1 To 12
        RecupDate = DateSuivante(RecupDate)
        Msg = Msg & "Label" & U + 1 & "= " & RecupDate & vbNewLine
    Next U
     
    MsgBox Msg
     
    End Sub
     
    Function DateSuivante(DateSoumis As Date) As Date
    Dim DateDebutMois As Date, DateFinMois As Date
    Dim T As Integer, U As Integer
     
    DateDebutMois = CDate("01/" & Month(DateSoumis) & "/" & Year(DateSoumis))
    DateDebutMois = DateAdd("m", 1, DateDebutMois) ' ajoute 1 mois pour traiter le mois suivant
     
    DateFinMois = DateAdd("m", 1, DateDebutMois) ' ajoute 1 mois
    DateFinMois = DateAdd("d", -1, DateFinMois) ' enleve 1 jour
     
    For T = 0 To Day(DateFinMois)
        If Weekday(DateAdd("d", T, DateDebutMois)) = vbTuesday Then U = U + 1
        If U = 2 Then DateSuivante = DateAdd("d", T, DateDebutMois): Exit For
    Next
     
    End Function
    les 12 mois dans 12 labels.
    Le/les codes déjà proposés auraient peu t'amener à la solution.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    je m’excuse pour le dérangement

    un pb et survenu


    Erreur 1 'Day' est un type et ne peut pas être utilisé en tant qu'expression. C:\Users\mahjoub\AppData\Local\Temporary Projects\WindowsApplication1\Form1.vb 36 22 WindowsApplication1

  9. #9
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Citation Envoyé par mahjoub123 post N°6
    je m’excuse pour le dérangement
    ................
    Il n'y a pas de problème, par contre je trouve dommage que l'on n'ai pas réussis à solutionné ta demande depuis 9 posts.
    Citation Envoyé par mahjoub123 post N°6
    bonsoir
    merci d'avance pour ton aide;
    j'ai essayé sur vb.net ça marche bien
    ................
    Donc, je pensai que tu avais essayé le code proposé en post N°5, ce code contenant plusieurs fois la fonction native Day(date), ligne 33
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For T = Day(TheDateFin) To (Day(TheDateFin) - 7) Step -1
    Pourquoi cela ne fonctionnerait plus dans le dernier code proposé? ou l'erreur n'est pas vraiment celle ci, est le debugueur ce trompe de ligne et donne une mauvaise indication sur une erreur qui se produit ailleurs.
    Par contre chez moi, sous VB6 le code fonctionne très bien.
    Peux tu me confirmer si le langage de programmation que tu utilises est bien du VB.net, en tout cas pour ton dernier essai ?
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    BONJOUR

    je l'ai essayé aussi sur VBA6 et sa marche bien.
    Moi je travaille sur microsoft visual basic 2010 ou il y a le problème.

    Sur VBA6 même si le textbox est vide et si on clique sur la commande le résultat s'affiche, il n'y a pas de liaison entre la date saisie dans le textbox et les résultat

    je m'excuse car je suis débutant.

    merci

  11. #11
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Re

    ligne 9 du dernier code proposé, j'ai mis en commentaire l'entrée du TextBox, comme je le signalai, Un code de démonstration, à toi d'adapter, donc pour le faire fonctionner par entrée d'un utilisateur, il faut enlever l'apostrophe (qui était la mise en commentaire) et, ligne 11, mettre la commande en commentaire (ajouter l'apostrophe).
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    ET POUR microsoft visual basic 2010 express toujours le pb Erreur 1 'Day' est un type et ne peut pas être utilisé en tant qu'expression.

    j'ai essayé plusieurs fois mais sans résultat

    EN FIN DE COMPTE voila ce que je veux

    BONJOUR
    l' application qui se compose de de TEXTBOX; 4 LABELS ET UN COMMANDE BOUTON

    l'application fonctionne comme suit
    si je saisi en textbox une date correspondante au premier Mardi d'un mois M; ET JE CLIQUE SUR LA COMMANDE BOUTON il doit:
    en label1 s'affiche la date de premier mardi du mois M+1
    en label2 s'affiche la date de premier mardi du mois M+2
    en label3 s'affiche la date de premier mardi du mois M+3
    en label4 s'affiche la date de premier mardi du mois M+4

    ET
    si je saisi en textbox une date correspondante au second Mardi d'un mois M; ET JE CLIQUE SUR LA COMMANDE BOUTON il doit:
    en label1 s'affiche la date de second mardi du mois M+1
    en label2 s'affiche la date de second mardi du mois M+2
    en label3 s'affiche la date de second mardi du mois M+3
    en label4 s'affiche la date de second mardi du mois M+4

    ET
    si je saisi en textbox une date correspondante au TROISIÈME Mardi d'un mois M; ET JE CLIQUE SUR LA COMMANDE BOUTON il doit:
    en label1 s'affiche la date de TROISIÈME mardi du mois M+1
    en label2 s'affiche la date de TROISIÈME mardi du mois M+2
    en label3 s'affiche la date de TROISIÈME mardi du mois M+3
    en label4 s'affiche la date de TROISIÈME mardi du mois M+4

    ET
    si je saisi en textbox une date correspondante au QUATRIÈME Mardi d'un mois M; ET JE CLIQUE SUR LA COMMANDE BOUTON il doit:
    en label1 s'affiche la date de QUATRIÈME mardi du mois M+1
    en label2 s'affiche la date de QUATRIÈME mardi du mois M+2
    en label3 s'affiche la date de QUATRIÈME mardi du mois M+3
    en label4 s'affiche la date de QUATRIÈME mardi du mois M+4


    ET LORSQUE JE SAISI UNE DATE CORRESPONDANT AU CINQUIÈME MARDI DU MOIS M, SE CONSIDÈRE COMME LE PREMIER MARDI DU M+1

    (exemple)
    si je saisi en texbox la date de 30/05/2017 CORRESPONDANTE AU 5EME MARDI; l’application considère cette date comme si j'ai saisi la date de 06/06/2017 (premier mardi de mois 6) et le premier label affiche la date de premier mardi de mois 7 et ainsi de suite

    merci d'avance



    merci

  13. #13
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Essais d'ajouter un fonction appelé Day à ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Function Day(DateSoumis As Date) As Integer
    Day = Left(DateSoumis, 2)
    End Function
    Son utilisation est la même, elle te renvoie un entier du jour de la date soumise, dans l'exemple, 24.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Form_Load()
     
    Dim Madate As Date
    Madate = CDate("24/04/2017")
    MsgBox Day(Madate), vbInformation
    End Sub

    Je viens de voir la modification/explication de ton dernier message, je regarderai çà sous peu, et te proposerai quelque chose dans quelle que temps.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    si tu veux de me faire le montage du code complet

    merci infiniment

  15. #15
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    ........
    si tu veux de me faire le montage du code complet
    Le but du forum n'est vraiment pas celui là, les différents codes que je t'ai posté devraient te permettre de proposer une solution écrit par toi.

    Demain, dans la journée ........ si tu as vraiment trop de difficulté à produire ce code, je te le ferai (exceptionnellement), mais franchement essais par toi même car c'est le meilleurs moyen d'apprendre et de comprendre, plutôt que de ne faire qu'un bête copier/coller.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  16. #16
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    merci

    parce que je suis débutant et je n'ai aucune formation en programmation et j'ai besoin de cette application dans mon travail , chose qui m'inciter a découvrir ce domaine et de se développer par moi même
    autre fois je vous remercie pour votre accompagnement et votre sotien

  17. #17
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    Salut

    Bon je ne sais pas si je ne te fait pas un cadeau empoisonné.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    Option Explicit
     
     
    Private Sub Text1_KeyPress(KeyAscii As Integer)
    If KeyAscii = 13 Then
        KeyAscii = 0
        Affichage Text1.Text
    End If
    End Sub
    Private Sub Command1_Click()
    Affichage Text1.Text
    End Sub
    Private Sub Affichage(DateSoumise As String)
    Dim UneDate As Date, TheDate As Date, TheDateFin As Date, T As Integer, U As Integer
     
    'vérification de l'entrée utilisateur
    If Not IsDate(DateSoumise) Then
        MsgBox "votre entrée n'est pas une date valide", vbInformation, "erreur"
        Exit Sub
    End If
    UneDate = CVDate(DateSoumise) 'conversion d'un literal en type Date
    If Weekday(UneDate) <> vbTuesday Then
        MsgBox "le jour de votre entrée n'est pas un mardi", vbInformation, "erreur"
        Exit Sub
    End If
     
    TheDate = "01/" & Month(UneDate) & "/" & Year(UneDate) '1er jour du mois proposé
     
    'pour verifier/compter si le mois contient plus de 4 mardi
    TheDateFin = DateAdd("m", 1, TheDate) ' ajoute 1 mois au mois proposé
    TheDateFin = DateAdd("d", -1, TheDateFin) ' enlevé 1 jour pour avoir le dernier jour du mois proposé
    'compte le nombre de mardi du mois proposé
    For T = 0 To Day(TheDateFin)
        If Weekday(DateAdd("d", T, TheDate)) = vbTuesday Then ' cette date est un mardi
            U = U + 1 'incrémente les mardis
            If U < 5 And DateAdd("d", T, TheDate) = UneDate Then Exit For
            If U = 5 And DateAdd("d", T, TheDate) = UneDate Then
                U = 1 'pour récupérer le 1er mardi du mois du mois suivant
                TheDate = RecupMardiSuivant(TheDate, U)
                Exit For
            End If
        End If
    Next T
    TheDate = RecupMardiSuivant(TheDate, U)
    Label1.Caption = TheDate
    TheDate = RecupMardiSuivant(TheDate, U)
    Label2.Caption = TheDate
    TheDate = RecupMardiSuivant(TheDate, U)
    Label3.Caption = TheDate
    TheDate = RecupMardiSuivant(TheDate, U)
    Label4.Caption = TheDate
     
    End Sub
     
    Function RecupMardiSuivant(dateEnCours As Date, NumMardi) As Date
    Dim DateDeb As Date, DateFin As Date, T As Integer, U As Integer
     
    DateDeb = "01/" & Month(dateEnCours) & "/" & Year(dateEnCours)
    DateDeb = DateAdd("m", 1, DateDeb) ' début du mois suivant
    DateFin = DateAdd("m", 1, DateDeb)
    DateFin = DateAdd("d", -1, DateFin) ' fin du mois suivant
    For T = 0 To Day(DateFin)
        If Weekday(DateAdd("d", T, DateDeb)) = vbTuesday Then
            U = U + 1
            If U = NumMardi Then
                RecupMardiSuivant = DateAdd("d", T, DateDeb)
                Exit For
            End If
        End If
    Next
    End Function
    '************************ fonctions récupération jour,mois,année *************************
    Function Day(DateSoumis As Date) As Integer
    Day = Left(DateSoumis, 2)
    End Function
    Function Month(DateSoumis As Date) As Integer
    Month = Mid(DateSoumis, 4, 2)
    End Function
    Function Year(DateSoumis As Date) As Integer
    Year = Right(DateSoumis, 4)
    End Function
    '******************** fin fonctions récupération jour,mois,année *************************
    Les 3 dernières fonctions ne servent que si elles ne sont pas natives dans microsoft visual basic 2010 express, par contre la/les fonctions Weekday, DateAdd, CVDate, IsDate ni sont peut être pas non plus .....

    Ce qui me ferai plaisir, c'est que tu modifies le code pour retourner les dates pour un autre jour que le mardi, cela voudrait dire que tu a compris le code.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  18. #18
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    bonjour

    merci bcp , vous êtes génial,

    ca marche bien avec vba6 et je sais pas si ca marche bien avec microsoft v basic 2010 EXPRESS si l'erreur (Erreur 1 'Day' est un type et ne peut pas être utilisé en tant qu'expression) ne persiste pas

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Collégien
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par mahjoub123 Voir le message
    bonjour

    merci bcp , vous êtes génial,

    ca marche bien avec vba6 et je sais pas si ca marche bien avec microsoft v basic 2010 EXPRESS si l'erreur (Erreur 1 'Day' est un type et ne peut pas être utilisé en tant qu'expression) ne persiste pas


    BONSOIR

    suite a des petites changement , le code fonctionne bien avec microsoft v basic 2010 EXPRESS, j'ai aussi réussi à essayé d'autres jours autre que le mardi

    merci beaucoup pour votre gentillesse

    cdt

  20. #20
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 174
    Points
    17 174
    Par défaut
    BONSOIR

    suite a des petites changement , le code fonctionne bien avec microsoft v basic 2010 EXPRESS, j'ai aussi réussi à essayé d'autres jours autre que le mardi
    merci beaucoup pour votre gentillesse
    cdt
    , à l'occasion si tu peux mettre le code VB2010 EXPRESS, cela pourrai intéresser des forumeurs qui liront cette discussion.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/05/2006, 21h28
  2. Affichage de date
    Par dotiaman dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2006, 21h08
  3. problème d'affichage de date
    Par Commodore dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 07/12/2005, 08h50
  4. cocher une case+affichage de dates
    Par Toff !!!!! dans le forum Access
    Réponses: 2
    Dernier message: 17/10/2005, 10h07
  5. Probleme avec affichage de date
    Par Wongmaster dans le forum Access
    Réponses: 27
    Dernier message: 24/12/2004, 20h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo