VBA 1er jours du mois

Bonsoir,

J'ai deux texbox pour avoir le nom du jours et dans l'autre la date :

    TextBox3 = Date
    TextBox2 = Format(TextBox3, "dddd")

        TextBox5 = Date + 1
    TextBox4 = Format(TextBox5, "dddd")

        TextBox7 = Date + 2
    TextBox6 = Format(TextBox7, "dddd")

        TextBox9 = Date + 3
    TextBox8 = Format(TextBox9, "dddd")

        TextBox11 = Date + 4
    TextBox10 = Format(TextBox11, "dddd")

        TextBox13 = Date + 5
    TextBox12 = Format(TextBox13, "dddd")

Il y à moyen de faire plus simple ? d'avoir la date compléte : Lundi 01-01-2023 dans une texbox au lieu d'en avoir deux ?

Mais j'aimerais que dans la "textbox 3" il m'affiche OBLIGATOIREMENT le 1er jours du mois en cours....
SI on es le 03 Juillet alors Textbox3 = Samedi 01-07-23

Merci

bonjour dgeo10,

un début ... , un textbox, c'est toujours un texte, donc ce n'est pas une date en les americains utilisent MM/DD/AA

madate = WorksheetFunction.EoMonth(Date, -1) + 1
textbox3 = Format(madate, "dddd dd-mm-yy")

Ah oui magnifique sa :D

Et du coup pour ma textbox5 si je veux que sa fasse date de la textbox3 +1 ?

En gros l'idée c'est d'avoir 31 textbox une en dessous de l'autre

dans la 1er : 1er jours du mois en cours

et dans la derniére : le dernier jours du mois

Mais que dans les derniére textbox si on est par exemple en février il faut pas qu'il affiche le 31 février ni le 1er mars dans les février ...

Format(madate + 1, "dddd dd-mm-yy")

Yes j'ai réussis quand même :)

Et ici pour la fin du mois, (c'est un exemple ici)

si je code : TextBox9 = Format(madate + 31, "dddd dd-mm-yy")

Forcément il m'affiche le 01-08-2023

Comment lui dire de ne pas afficher les dates SI ce n'est pas dans le mois en cours ?

Donc texbox30 = vide si réponse (01-08-23)

re, ce sont des textboxes d'un userform ?

     madate = WorksheetFunction.EoMonth(Date, -1)     'dernier jour du mois précédent
     For i = 1 To 31
          d = madata + i
          If Month(d) = Month(madate) Then
               Controls("TextBox" & i ).value = Format(d, "dddd dd-mm-yy")
          Else
               Controls("TextBox" & i ).value = "autre mois"
          End If
     Next i

BOnjour,

Oui le programme est entiérement dans un USF

31 Textboxs une en dessous de l'autre pour (max) 31 jours du mois

TextBox1 = Format(madate, "dddd dd-mm-yy")

TextBox2 = Format(madate + 1, "dddd dd-mm-yy")

TextBox3 = Format(madate + 2, "dddd dd-mm-yy")

TextBox4 = Format(madate + 31, "dddd dd-mm-yy")

Et ainsi de suite jusque Textbox31 ...

Avec une boucle serais plus simple mais j'y arrive pas ahah

re, vous pouvez nous joindre votre fichier anonimysé ...

5test-copie.xlsm (31.54 Ko)

re,

votre fichier de retour

11test-copie.xlsm (30.56 Ko)

Merci à toi :)

Et pour le mois de septembre par exemple vu que 30jours réel, dans la textbox31 il affichera rien ?

re, par exemple février (28 jours et en néerlandais), tout dépend de votre goût

image
Rechercher des sujets similaires à "vba 1er jours mois"