Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Je cherche mon erreur dans la boucle ..

  • Initiateur de la discussion Initiateur de la discussion greg32885
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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.. 😕

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
 
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 😛...
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 😎
 
Re : Je cherche mon erreur dans la boucle ..

Bonsoir JNP 🙂

Un grand Merci pour ta réponse 🙂
Je ne sais pas si c'est la fatigue mais je ne comprends pas très bien mon erreur 🙁

Tu pourrais m'en dire plus ??

Encore merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
645
Réponses
12
Affichages
1 K
Réponses
3
Affichages
1 K
Réponses
0
Affichages
2 K
Réponses
1
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…