dans le fichier ci-joint j’ai une erreur au résultat de soustraction.
Explication:
si je clique sur la ligne présente dans le listbox et que je voudrai saisir dans le textbox ACCOMPTE un 0 par exemple alors il me fausse le résultat dans le textbox SOLDE RESTANT.
Pourriez vous me guider pour résoudre cette erreur s’il vous plaît.
j’espère que tu vas bien. Je reviens souvent car suite à l’incendie chez nous l’année dernière tout avait brûlé au bureau et tous les travaux que vous tous m’aviez fait sont parti en fumée.
Merci pour ton code qui fonctionne comme toujours, à merveille .
Mais, à oui, toujours un mais, j’ai un autre userform qui contient la même chose à un textbox prêt et qui me fais la même chose.
Mais je n’arrive pas à adapter cette ligne.
Je te place les deux codes ci-dessous.
Private Sub TextBox10_AfterUpdate()
If Me.TextBox6.Value = "" Then Me.TextBox6.Value = 0
TextBox10 = Format(Replace(Me.TextBox10, ".", ",") * 1, "#,##0.000 €")
CalculSomme2
End Sub
Sub CalculSomme2()
Me.TextBox6.Value = Format(Val((Me.TextBox9.Text)) - Format(Val((Me.TextBox5.Text)) + Val(Replace(Me.TextBox10, ",", ".")), "#0.00 €"))
End Sub
C’est la ligne du CalculSomme2 que je n’arrive pas à adapter comme tu as fais sur celle ci- dessous.
Sub CalculSomme2()
Me.TextBox9.Value = Format((Me.TextBox6 - Replace(Me.TextBox7, ".", ",") * 1), "#0.000 €")
End Sub
Décidément pas de chance avec les précieux documents fruits de nos échanges qui en ont été les victimes
Mais rassures toi nos mains elles te resteront toujours tendues
Dans tes lignes de codes pour transformer une donnée en valeur dans une opération tu utilises l’instruction Val
Or celle-ci fait bien le boulot mais avec l’inconvénient pour celles decimales de les arrondir en entier
Moi j’utilise un artifice qui est de les multiplier par 1
Ainsi toi tu mets
Val(Me.TextBox9.Text)
Moi j’écris
(Me.TextBox9)*1
Donc dans cet esprit je mettrait dans la procedure culSomme2 ainsi
Merci, mais cela ne fonctionne pas.
Donc le plus simple est de te mettre un modèle fidèle à l’origine qui te servira pour comprendre ce qui ne fonctionne pas.
En gros ;
si je clique sur la ligne dans le listbox il affiche bien les deux premiers textbox.
Maintenant si je saisi un nombre dans le textbox avoir ou accompte et que je sors il donne une erreur sur la ligne que j’ai modifiée après ton conseil.
« MERCI GRAND MAÎTRE » c’est trop d’honneur !!!
J’adapte mes connaissances aux contextes concernés
J’ai un peu galèrė car ta ligne de code pour le cacul à effectuer fait appel à 3 données toutes à basculer en nombre pour que celui-ci s’effectue sans bug (un userform ne contient que des formats texte)
Hors effectuer cette transformation pour toutes celles-ci avec en même temps leurs opérations c’était trop demander à Excel
D’où la nécessité de réaliser l’ensemble en 2 temps
Correction des données en premier puis calcul en second
Ainsi cela fonctionne
Ravi que celà te convienne
Au plaisir une prochaine fois