XL 2016 additionner textbox en boucle

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

poussy67

XLDnaute Occasionnel
Bonjour, Bonsoir le Forum

je fais appel au pro de la vba pour un coup de pouce

Cela fait plusieurs heure que je cherche a trouver une solution
sans trouver de résultat . Mon problème j'ai un USF avec plusieurs
textbox qui sont boucles pour affichage donnée. Je cherche une solution
pour additionner les textbox en boucle.

je n'arrive pas avoir un total des 2 textbox NbCrebT + ResCrent = Total_cren

j'ai essayer sous cette forme, mais sans résultat (toujours avec un message d'erreur d'execution 13)

For i = 1 To 21
If Me.Controls("NbCrenT_" & i) <> "" Then
Me.Controls("Total_Cre_" & i) = ("NbCrenT_" & i) - ("ResCrenT_" & i)
Else
'MsgBox "Valeur"
End If
Next i

en vous remerciant d'avance pour votre aide

Cdt Poussy
 
Bonsoir,

Sans fichier compliqué, mais je vois au moins 2 erreurs dans le code
VB:
Me.Controls("Total_Cre_" & i).Value = Me.Controls("NbCrenT_" & i).Value - Me.Controls("ResCrenT_" & i).Value

A+
 
Bonjour BrunoM45

Merci pour votre retour rapide. Cela fonctionne très bien.
J'aurai une autre question à poser sur le Forum.
Est-il possible de simplifier (éviter un grand nombre de ligne en vba) qui permet de remplir les textbox
via un combobox.

With Sheets("Data")
'Nb creneaux
NbCrenT_1.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 4).Value
NbCrenT_2.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 6).Value
NbCrenT_3.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 8).Value
NbCrenT_4.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 10).Value
NbCrenT_5.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 12).Value
NbCrenT_6.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 14).Value
NbCrenT_7.Value = Sheets("Data").Cells(ComboBox1.ListIndex + 5, 16).Value

Ci-joint un exemple.

Cdt
 

Pièces jointes

Bonjour,

Tu ne semble pas avoir compris à quoi servait "With... End With"
Voici ton code modifié avec prise ne coompte de ton objet conteneur "With.."
VB:
Private Sub ComboBox1_Change()
  Dim Ind As Integer
  With Sheets("Data")
    For Ind = 1 To 20
      'Nb creneaux
      Me("NbCrenT_" & Ind).Value = .Cells(ComboBox1.ListIndex + 5, 2 + (Ind * 2)).Value
      Me("ResCrenT_" & Ind).Value = .Cells(ComboBox1.ListIndex + 5, 3 + (Ind * 2)).Value
    Next Ind
  End With
  Call Test
End Sub

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
3
Affichages
576
Retour