Plusieurs onglet selon mois

Bonjour,

Je suis entrain de préparer un nouveau livre de caisse pour 2013.

Mon livre comporte 1 onglet par mois. Ceci dis, j'ai créer un userform pour rentrer les données dans le cellules concernés.

J'ai intégrer (grâce à l'aide sur votre forum) un code pour que ma boucle fonctionne en inscrivant mes données dans la 1ère ligne vide de mon onglet.

Maintenant, j'ai un calendrier dans ma textbox de mon userfom, j'aimerais que celui-ci en fonction de la date choisi m'inscrive dans le bonne onglet du bon mois.

Voici mon code:

Private Sub TextBox4_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

Cancel = True

mDFXLcalShow CalCtrl:=TextBox4, CalFormat:="dd/mm/yyyy", CalLang:="FR"

End Sub

'Calendrier avec choix de la date

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = vbFormControlMenu Then

MsgBox "Vous ne pouvez pas utiliser ce bouton de fermeture." & Chr(10) _

& "Pour fermer cette boîte de dialogue, veuillez utiliser le bouton Quitter"

Cancel = True

End If

End Sub

Private Sub Valide_Click()

Sheets("Janvier").Range("A1000").End(xlUp).Offset(1, 0).Value = TextBox4.Value

Sheets("Janvier").Range("A1000").End(xlUp).Offset(0, 2).Value = TextBox1.Value

Sheets("Janvier").Range("A1000").End(xlUp).Offset(0, 3).Value = TextBox2.Value

Sheets("Janvier").Range("A1000").End(xlUp).Offset(0, 4).Value = TextBox3.Value

ActiveSheet.Protect Password:="TF"

Unload UserForm1

End Sub

Private Sub Quitter_Click()

Unload Me

End Sub

Je suis embarrasser car pour ma boucle j'appelle mon onglet par son nom (ci-dessus en rouge) du coup dois-je faire un userfom par mois? Je pense qu'il doit y avoir plus simple.

Merci de vos précieux conseils

Bonne journée

F.

Bonjour Fridoun,

tout d'abord utilise les balises de code pour le mettre en forme et le rendre plus lisible (en haut à gauche quand tu écris, près des balises gras, italique, ...)

t'auras pas besoin de faire plusieurs UserForm (UF) mais tu devras faire une petite manip avec une variable String.

Quelque chose du genre :

Dim NomFeuil as String
NomFeuil = Cstr(Format(DateChoisie,"mmm"))

Bon courage

Bonjour,

Tu peux utiliser :

Dim monmois As string
monmois = Format(TextBox4.value, "MMMM")

Si textbox4.value = 02/09/2012 alors monmois = septembre

Donc tu utiliseras ensuite :

Sheets(monmois ).Range("A1000").End(xlUp).Offset(1, 0).Value = TextBox4.Value 
Sheets(monmois ).Range("A1000").End(xlUp).Offset(0, 2).Value = TextBox1.Value 
Sheets(monmois ).Range("A1000").End(xlUp).Offset(0, 3).Value = TextBox2.Value 
Sheets(monmois ).Range("A1000").End(xlUp).Offset(0, 4).Value = TextBox3.Value 

Dis moi.

Damien

Bonjour,

Effectivement ca fonctionne à merveille. De plus, et grâce à vous je comprends encore un peu plus le code VBA. Lire des articles ou livres ne suffise pas toujours, voir les résultats en suivant les code que vous me proposer me fait avancez dans ma compréhension.

Un grand merci vous êtes extra.

Bonne journée

Rechercher des sujets similaires à "onglet mois"