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

(RESOLU)Erreur d'execution 13 dans le code

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 !

chaelie2015

XLDnaute Accro
Bonjour Form
je souhaite calculer la diff entre TextBox18 et TextBox19 dans le TextBox35
j'ai utilisé ces codes
format chiffre et deux valeur après le virgule (point ou virgule)

Code:
Private Sub TextBox18_AfterUpdate()
Dim LeTexte As String
LeTexte = ""
LeTexte = TextBox18.Value
LeTexte = Application.WorksheetFunction.Substitute(LeTexte, Chr(46), Chr(44))
TextBox18.Value = Format(LeTexte, "0.00")
TextBox18 = Replace(TextBox18, ".", ",")
TextBox18 = Format(TextBox18, "#,##0.00")
End Sub
Private Sub TextBox19_AfterUpdate()
Dim LeTexte As String
LeTexte = ""
LeTexte = TextBox19.Value
LeTexte = Application.WorksheetFunction.Substitute(LeTexte, Chr(46), Chr(44))
TextBox19.Value = Format(LeTexte, "0.00")
TextBox19 = Replace(TextBox19, ".", ",")
TextBox19 = Format(TextBox19, "#,##0.00")
End Sub
Private Sub TextBox35_AfterUpdate()
Dim LeTexte As String
LeTexte = ""
LeTexte = TextBox35.Value
LeTexte = Application.WorksheetFunction.Substitute(LeTexte, Chr(46), Chr(44))
TextBox35.Value = Format(LeTexte, "0.00")
TextBox35 = Format(TextBox35, "#,##0.00")
End Sub


Code:
End Sub
Sub Rest_apayer()

If TextBox18 <> "" And TextBox19 <> "" Then
TextBox35.Value = CDbl(TextBox18) - CDbl(TextBox19)
TextBox35 = Replace(TextBox35, ".", ",")
TextBox35 = Format(TextBox35, "#,##0.00")
Else: TextBox35 = ""
End If
End Sub

Private Sub TextBox18_Change()
Rest_apayer

End Sub
Private Sub TextBox19_Change()
Rest_apayer
End Sub

Private Sub TextBox35_Change()
Rest_apayer
End Sub

mon souci est quand je saisi dans TextBox19 une valeur avec point et non virgule il m'affiche une erreur d’exécution13
Incompatibilité de type
au niveau de :
--------------
TextBox35.Value = CDbl(TextBox18) - CDbl(TextBox19)
--------------
MERCI PAR AVANCE
 
Dernière édition:
Re : Erreur d'execution 13 dans le code

Bonjour.
Essayez plutôt des procédures de ce genre :
VB:
Private Sub TextBox18_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = Asc(".") Then KeyAscii = Asc(",")
End Sub
 
Re : Erreur d'execution 13 dans le code

re

EDIT: modification

transfert par des variables

Dim V1#, V2#
X$ = Replace(TextBox18, ",", "."): V1 = Val(X$)
X$ = Replace(TextBox19, ",", "."): V2 = Val(X$)
TextBox35 = V1 - V2


sinon la méthode Dranreb !?
 
Dernière édition:
- 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
538
Réponses
7
Affichages
875
Réponses
12
Affichages
507
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…