Je cherche mon erreur dans la boucle ..

greg32885

XLDnaute Nouveau
Bonjour,

je viens demander de l'aide à la communauté sur une boucle que je tente de rédiger depuis plusieurs heures maintenant.. :confused:

Ce code a pour but de copier une feuille de mon classeur 5 fois et chaque feuille doit être renommée (lundi.... vendredi)
Dans cette boucle j'en profite pour tenter de renommer des Optionbutton (optionbutton4 à 8)

Ce que j'obtiens c'est que les onglets sont bien renommés comme je le souhaite mais les OptionButton ont tous le même nom (vendredi...)

Si quelqu'un peut m'expliquer mon erreur ce serait vraiment sympa :)

Code:
Private Sub NumSemaine_Change()

Dim I As Double, DateDépart As Date, J As Integer


DateDépart = [DateLundi] + (NumSemaine.Value - 1) * 7
'DateDépart = Feuil2.Range("F1", "F52") + (NumSemaine.Value - 1) * 7
For I = CDbl(DateDépart) To CDbl(DateDépart) + 4


Sheets("FicheJournée").Copy Before:=Sheets("FicheJournée")

'Je copie la date du jour dans la cellule A1
ActiveSheet.Range("A1").Value = Format(I, "dddd dd-mm-yy")

'Je renomme la feuille avec le jour
ActiveSheet.Name = Format(I, "dddd")

    For J = 4 To 8 'ButtonOption
    'Je renomme les boutons radio jours avec jour+date
    Controls("OptionButton" & J).Caption = Format(I, "dddd dd-mm-yy")
    
    Next J

Next I

Sheets("lundi").Select


End Sub
 

JNP

XLDnaute Barbatruc
Re : Je cherche mon erreur dans la boucle ..

Bonsoir Greg32885 :),
Tu as 2 boucles imbriquées. Tu renommes à chaque fois tes boutons avec la date I, donc, que des vendredi, dernière date utilisée :p...
Code:
Private Sub NumSemaine_Change()
Dim I As Double, DateDépart As Date, J As Integer
DateDépart = [DateLundi] + (NumSemaine.Value - 1) * 7
'DateDépart = Feuil2.Range("F1", "F52") + (NumSemaine.Value - 1) * 7
[COLOR=red][B]J = 4[/B][/COLOR]
For I = CDbl(DateDépart) To CDbl(DateDépart) + 4
Sheets("FicheJournée").Copy Before:=Sheets("FicheJournée")
'Je copie la date du jour dans la cellule A1
ActiveSheet.Range("A1").Value = Format(I, "dddd dd-mm-yy")
'Je renomme la feuille avec le jour
ActiveSheet.Name = Format(I, "dddd")
'Je renomme les boutons radio jours avec jour+date
Controls("OptionButton" & J).Caption = Format(I, "dddd dd-mm-yy")
[COLOR=red][B]J = J + 1[/B][/COLOR]
Next I
Sheets("lundi").Select
End Sub
devrait mieux fonctionner ;).
Bonne soirée :cool:
 

Discussions similaires

Statistiques des forums

Discussions
312 677
Messages
2 090 824
Membres
104 677
dernier inscrit
soufiane12