Boucle avec condition sur bouton ok

  • Initiateur de la discussion Initiateur de la discussion treza88
  • 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 !

treza88

XLDnaute Occasionnel
Bonjour à tous,

Je suis en train de créer une userform qui reprend dans des textbox les lignes d'un tableau dans excel et je voudrais valider le passage de ligne en ligne en clickant sur le bouton ok de la userform.
Mais je ne vois pas comment utiliser la condition sur le bouton ok.
Le code que je souhaiterais faire doit resembler a quelque chose comme le code en dessous.

Code:
 Private Sub UserForm_Initialize()
Dim i As Integer
   For i = 5 To Range("D65536").End(xlUp).Row
      tb_ref.Value = Cells(i, 3).Value
      tb_desi.Value = Cells(i, 4).Value
      tb_nb.Value = Cells(i, 5).Value
      tb_long.Value = Cells(i, 7).Value
      tb_larg.Value = Cells(i, 8).Value
      tb_ep.Value = Cells(i, 9).Value
      tb_nb_mb.Value = (Cells(i, 5).Value / Cells(i, 6).Value)
        [COLOR=red]If cb_ok.Click Then
            Next i
[/COLOR]   Application.Calculate
End Sub

Merci de me donner un petit coup de pouce.
 
Re : Boucle avec condition sur bouton ok

Bonjour,

Cela peut se faire comme ceci:

En tête de module déclarer une Variable

Dim Ligne As Long

Dans le module du userform Créer une procédure:

Code:
Private sub ChargerFiche()
      tb_ref.Value = Cells(Ligne, 3).Value
      tb_desi.Value = Cells(Ligne, 4).Value
      tb_nb.Value = Cells(Ligne, 5).Value
      tb_long.Value = Cells(Ligne, 7).Value
      tb_larg.Value = Cells(Ligne, 8).Value
      tb_ep.Value = Cells(Ligne, 9).Value
      tb_nb_mb.Value = (Cells(Ligne, 5).Value / Cells(Ligne, 6).Value)
End sub
ensuite

Code:
 Private Sub UserForm_Initialize()
    Ligne = 5
    ChargerFiche
End Sub
Dans la procédure Click du bouton

Code:
Private Sub cb_ok_Click()
   Ligne=Ligne+1
   If Ligne < Range("D65536").End(xlUp).Row Then ChargerFiche
End sub

C'est une démarche possible, à toi d'adapter.

A+
 
- 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
5
Affichages
914
Réponses
2
Affichages
528
Réponses
8
Affichages
782
Réponses
2
Affichages
257
Réponses
5
Affichages
574
Réponses
4
Affichages
735
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Retour