Calcul en temps réel dans un userform
zapp56
-
cs_Le Pivert Messages postés 8437 Statut Contributeur -
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,
Pour faire simple, j'ai un userform sous forme de tableau, avec une soixantaine de textbox, qui doivent donner un résultat dans la dernière colonne.
Je voudrais que ces résultats se calculent en temps réel, c'est à dire exactement comme si je faisais ce tableau sous excel avec en dernière cellule de ligne (=somme A1:G1). Chaque fois que je remplis une textbox et passe à une autre, le calcul se fait.
Y-a-t-il une autre solution que d'éditer chaque textbox_click dans le code ? (64 textbox à éditer...)
Merci d'avance.
Pour faire simple, j'ai un userform sous forme de tableau, avec une soixantaine de textbox, qui doivent donner un résultat dans la dernière colonne.
Je voudrais que ces résultats se calculent en temps réel, c'est à dire exactement comme si je faisais ce tableau sous excel avec en dernière cellule de ligne (=somme A1:G1). Chaque fois que je remplis une textbox et passe à une autre, le calcul se fait.
Y-a-t-il une autre solution que d'éditer chaque textbox_click dans le code ? (64 textbox à éditer...)
Merci d'avance.
A voir également:
- Calcul en temps réel dans un userform
- Maps satellite en temps réel - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Partager sa position en temps réel - Guide
- Calcul moyenne excel - Guide
- Calcul km marche à pied gratuit - Télécharger - Sport
2 réponses
Bonsoir Zapp, bonsoir le forum,\
Il te faut passer par un module de classe... Tu crées une classe pour tes TextBoxes numériques. À l'initialisation de l'Userform un tableau récupère les contrôles qui vont faire partie de la classe. Au changement dans n'importe quelle textbox de la classe le total s'affiche.
J'ai longtemps galéré avec les modules de classe alors je t'envoie un petit fichier Word que je ressors chaque fois que je dois en créer un et un petit exemple Excel :
https://www.cjoint.com/c/ECdwFooTNUy
Il te faudra, bien sûr, l'adapter à ton cas. J'ai commenté le code..
Il te faut passer par un module de classe... Tu crées une classe pour tes TextBoxes numériques. À l'initialisation de l'Userform un tableau récupère les contrôles qui vont faire partie de la classe. Au changement dans n'importe quelle textbox de la classe le total s'affiche.
J'ai longtemps galéré avec les modules de classe alors je t'envoie un petit fichier Word que je ressors chaque fois que je dois en créer un et un petit exemple Excel :
https://www.cjoint.com/c/ECdwFooTNUy
Il te faudra, bien sûr, l'adapter à ton cas. J'ai commenté le code..
Bonjour,
Voir ceci:
https://silkyroad.developpez.com/VBA/ControlesUserForm/#LI-B
Encore un autre exemple pour boucler sur les TextBox: Transférer le contenu de 10 TextBox dans la plage de cellules A1:A10
Voir ceci:
https://silkyroad.developpez.com/VBA/ControlesUserForm/#LI-B
Encore un autre exemple pour boucler sur les TextBox: Transférer le contenu de 10 TextBox dans la plage de cellules A1:A10
Private Sub CommandButton1_Click()
Dim i As Integer
For i = 1 To 10
Cells(i, 1) = Me.Controls("TextBox" & i)
Next i
End Sub
J'ai commencé la programmation sur Basic de calculatrice et mes développements VB sont pas toujours très... académiques. J'ai réussi à me séparer de la programmation spaghetti mais bon.
Je vais consulter tout ça. Merci à toi.