OVH Cloud OVH Cloud

Somme dans un Userform

8 réponses
Avatar
Christian
Bonjour =E0 tous
J'ai cr=E9er sur base d'explications re=E7ues d'une part de=20
Mr.Ga=EBtan Mourmant et d'autre part, de d=E9mos trouv=E9es sur=20
le site de Misange, un Userform qui comprend une petite=20
centaine de textbox.
Il me reste deux soucis.=20
Le premier concerne le format de la date; je suis oblig=E9=20
de l'encoder dans le textbox au format "mm/dd/yyyy" pour=20
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus emb=EAtant concerne le dernier textbox=20
r=E9alis=E9 sur le m=EAme formulaire et qui devrait pouvoir=20
m'indiquer la somme de toutes les valeurs inscrites plus=20
haut dans les diff=E9rents textboxs.=20
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian

8 réponses

Avatar
papou
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox devant être pris en
compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut être envisagé de
boucler sur chaque contrôle et d'incrémenter une valeur à chaque passage.
Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name <> "TextBox5" Then
i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a écrit dans le message de
news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées sur
le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier textbox
réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian
Avatar
Christian
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur à
chaque passage.

Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées sur
le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier textbox
réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.



Avatar
papou
Re
Ben là il faut effectivement savoir ce qui va déterminer le lancement du
calcul.
Tu peux soit mettre le code dans un bouton , soit le mettre dans l'évènement
MouseDown du TextBox par exemple.
Donc ici par exemple, le calcul se fait une fois que l'on a effectué un clic
gauche sur la zone du Textbox (modifie le nom du textbox):
Private Sub TextBox5_MouseDown(ByVal Button As Integer, ByVal Shift As
Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name <> "TextBox5" Then
i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i
End If
End Sub

Cordialement
Pascal

"Christian" a écrit dans le message de
news:04e401c5295d$4c1885a0$
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur à
chaque passage.

Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées sur
le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier textbox
réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.



Avatar
Christian
Merci Pascal pour ces renseignements.
Je vais directement les mettre en pratique.
Cordialement
Christian
-----Message d'origine-----
Re
Ben là il faut effectivement savoir ce qui va déterminer
le lancement du

calcul.
Tu peux soit mettre le code dans un bouton , soit le
mettre dans l'évènement

MouseDown du TextBox par exemple.
Donc ici par exemple, le calcul se fait une fois que l'on
a effectué un clic

gauche sur la zone du Textbox (modifie le nom du textbox):
Private Sub TextBox5_MouseDown(ByVal Button As Integer,
ByVal Shift As

Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i
End If
End Sub

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:04e401c5295d$4c1885a0$
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur à
chaque passage.

Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées sur
le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier textbox
réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.




.




Avatar
Christian
Rebonjour Pascal
Je reçois le message d'erreur suivant: "Erreur de
compilation-Variable non définie".
Sur le haut de ma feuille, j'ai la mention "Option
Explicit".
Que dois-je faire?
Merci d'avance
Christian
-----Message d'origine-----
Re
Ben là il faut effectivement savoir ce qui va déterminer
le lancement du

calcul.
Tu peux soit mettre le code dans un bouton , soit le
mettre dans l'évènement

MouseDown du TextBox par exemple.
Donc ici par exemple, le calcul se fait une fois que l'on
a effectué un clic

gauche sur la zone du Textbox (modifie le nom du textbox):
Private Sub TextBox5_MouseDown(ByVal Button As Integer,
ByVal Shift As

Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i
End If
End Sub

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:04e401c5295d$4c1885a0$
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur à
chaque passage.

Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées sur
le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier textbox
réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.




.




Avatar
papou
Re
Ajoute
Dim ctr
avant la ligne
For Each ctr In Me.Controls
Cordialement

Pascal

"Christian" a écrit dans le message de
news:71f201c52964$b8438bb0$
Rebonjour Pascal
Je reçois le message d'erreur suivant: "Erreur de
compilation-Variable non définie".
Sur le haut de ma feuille, j'ai la mention "Option
Explicit".
Que dois-je faire?
Merci d'avance
Christian
-----Message d'origine-----
Re
Ben là il faut effectivement savoir ce qui va déterminer
le lancement du

calcul.
Tu peux soit mettre le code dans un bouton , soit le
mettre dans l'évènement

MouseDown du TextBox par exemple.
Donc ici par exemple, le calcul se fait une fois que l'on
a effectué un clic

gauche sur la zone du Textbox (modifie le nom du textbox):
Private Sub TextBox5_MouseDown(ByVal Button As Integer,
ByVal Shift As

Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i
End If
End Sub

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:04e401c5295d$4c1885a0$
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur à
chaque passage.

Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées sur
le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier textbox
réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.




.




Avatar
Christian
Merci Pascal
Maintenant, je reçois le message suivant:
"Erreur d'exécution '13'- Incompatibilité de type"; et
lorsque je clique sur débogage, cela s'arrête sur "i=i+ctr"
Cordialement
Christian
-----Message d'origine-----
Re
Ajoute
Dim ctr
avant la ligne
For Each ctr In Me.Controls
Cordialement

Pascal

"Christian" a écrit
dans le message de

news:71f201c52964$b8438bb0$
Rebonjour Pascal
Je reçois le message d'erreur suivant: "Erreur de
compilation-Variable non définie".
Sur le haut de ma feuille, j'ai la mention "Option
Explicit".
Que dois-je faire?
Merci d'avance
Christian
-----Message d'origine-----
Re
Ben là il faut effectivement savoir ce qui va déterminer
le lancement du

calcul.
Tu peux soit mettre le code dans un bouton , soit le
mettre dans l'évènement

MouseDown du TextBox par exemple.
Donc ici par exemple, le calcul se fait une fois que l'on
a effectué un clic

gauche sur la zone du Textbox (modifie le nom du
textbox):


Private Sub TextBox5_MouseDown(ByVal Button As Integer,
ByVal Shift As

Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i
End If
End Sub

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:04e401c5295d$4c1885a0$
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur
à



chaque passage.
Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a
écrit



dans le message de
news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées
sur



le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier
textbox



réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.




.




.





Avatar
papou
Dans ces conditions, il doit y avoir un textbox dont la valeur ne doit pas
être numérique.
Cordialement
Pascal

"Christian" a écrit dans le message de
news:055701c52969$2d62c600$
Merci Pascal
Maintenant, je reçois le message suivant:
"Erreur d'exécution '13'- Incompatibilité de type"; et
lorsque je clique sur débogage, cela s'arrête sur "i=i+ctr"
Cordialement
Christian
-----Message d'origine-----
Re
Ajoute
Dim ctr
avant la ligne
For Each ctr In Me.Controls
Cordialement

Pascal

"Christian" a écrit
dans le message de

news:71f201c52964$b8438bb0$
Rebonjour Pascal
Je reçois le message d'erreur suivant: "Erreur de
compilation-Variable non définie".
Sur le haut de ma feuille, j'ai la mention "Option
Explicit".
Que dois-je faire?
Merci d'avance
Christian
-----Message d'origine-----
Re
Ben là il faut effectivement savoir ce qui va déterminer
le lancement du

calcul.
Tu peux soit mettre le code dans un bouton , soit le
mettre dans l'évènement

MouseDown du TextBox par exemple.
Donc ici par exemple, le calcul se fait une fois que l'on
a effectué un clic

gauche sur la zone du Textbox (modifie le nom du
textbox):


Private Sub TextBox5_MouseDown(ByVal Button As Integer,
ByVal Shift As

Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i
End If
End Sub

Cordialement
Pascal

"Christian" a écrit
dans le message de

news:04e401c5295d$4c1885a0$
Bonjour Pascal
Merci de m'avoir lu et répondu si vite.
Il n'est pas nécessaire d'effectuer un contrôle de valeur
sur chaque TextBox.
D'autre part, pourrais-tu m'indiquer la marche à suivre
pour "coller" ta procédure au TextBox reprenant la Somme.
En te remerciant d'avance.
Christian
-----Message d'origine-----
Bonjour
Un contrôle de valeur est-il effectué sur chaque Textbox
devant être pris en

compte pour la somme ?
Si c'est le cas, où si ce n'est pas utile (?), il peut
être envisagé de

boucler sur chaque contrôle et d'incrémenter une valeur
à



chaque passage.
Exemple
Dim i As Long
i = 0
For Each ctr In Me.Controls
If TypeOf ctr Is MSForms.TextBox And ctr.Name
<> "TextBox5" Then

i = i + ctr
End If
Next ctr
Me.TextBox5.Value = i

Cordialement
Pascal

"Christian" a
écrit



dans le message de
news:049b01c52956$c456db40$
Bonjour à tous
J'ai créer sur base d'explications reçues d'une part de
Mr.Gaëtan Mourmant et d'autre part, de démos trouvées
sur



le site de Misange, un Userform qui comprend une petite
centaine de textbox.
Il me reste deux soucis.
Le premier concerne le format de la date; je suis obligé
de l'encoder dans le textbox au format "mm/dd/yyyy" pour
qu'il me revienne dans la bdd au format "jj/mm/yyyy".
Le second et le plus embêtant concerne le dernier
textbox



réalisé sur le même formulaire et qui devrait pouvoir
m'indiquer la somme de toutes les valeurs inscrites plus
haut dans les différents textboxs.
J'essaye en vain depuis ce matin et je n'y parviens pas.
Si vous pouviez m'aider, cela m'arrangerait beaucoup.
En vous remerciant d'avance.
Christian


.




.




.