Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Calcule dans dans un textbox

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

wrap food

XLDnaute Occasionnel
Bonjour,

encore une fois j'ai besoin de votre aide.
j'ai presque réussi à arriver à mes fins , mais seulement ''presque"

je souhaite effectuer les additions dans des Textbox.
J'ai donc "" créé'' le code ci-dessous.

Private Sub Fabrique_HO_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
Fabrique_HO.Value = Evaluate(Fabrique_HO.Text)
On Error Resume Next
Range("K142").Value = Fabrique_HO
On Error Resume Next
Range("K142").Value = Replace(Fabrique_HO.Value, ",", ".")
On Error Resume Next
Label14 = IIf(Range("L142") = 0, "", Format(Range("L142"), "0.00%"))
On Error Resume Next
End Sub


Tous va bien, mais quand je refais le même code pour un autre textbox cela ne fonctionne pas .
Dans le deuxième, le resultat n'apparait pas , seul l'opération apparait ( exemple 2+2 )

pourtant c'est le même code juste modifié avec le bon nom du deuxième textbox .
seriez-vous me dire d'où vient mon erreur ??



Private Sub Vente_HO_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
Vente_HO.Value = Evaluate(Vente_HO.Text)
On Error Resume Next
Range("K143").Value = Vente_HO
On Error Resume Next
Range("K143").Value = Replace(Vente_HO.Value, ",", ".")
On Error Resume Next
Label15 = IIf(Range("L143") = 0, "", Format(Range("L143"), "0.00%"))
On Error Resume Next
End Sub


Par avance merci
de votre d'aide
 
Bonsoir,
Pour gérer le Textbox soit déjà pour que ce soit numerique

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'que numéric et 1 seule virgule
If KeyAscii = 46 And Not TextBox1 Like "*,*" Then KeyAscii = 44: Exit Sub
If InStr("0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0
End Sub

ensuite pour écrire la valeur du textbox dans une cellule
lacellule=cdbl(textbox1)

Dans ton code inutile de répéter On error resume next (une seule fois suffit)
si error il y a c'est
If err<>0 then
'traitement de l'error
err.clear 'on supprime l'error
et on passe au suivant

Bruno


 
- 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
2
Affichages
515
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…