VBA Exception non gérée String vs Double
Résolu
arscy
-
arscy -
arscy -
Bonjour la communauté-des-héros-de-l'ombre,
Je débarque sur Visual Basic aka VB (inutile de préciser que c'est dans un cadre universitaire ;-) )
Je fais actuellement face à une problématique de l'ordre d'Exception non gérée
→ J'ai créé un convertisseur monétaire qui convertit de façon bidirectionnelle
(monnaie a vers monnaie b et vice versa)
L'algorithme est fonctionnel SAUF que...
lorsque j'efface le contenu d'une de mes deux TextBox j'ai instantanément un message d'erreur : Forcément, mes variables assignées aux deux TextBox étant typées en Double, lorsque la cellule est vide c'est le conflit String versus Double.
Ci-dessous mon code pour une des deux TextBox (pour l'autre c'est l'exact inverse)
Etant donné que j'ai réglé dans le code la problématique de la case vide, je présume que je dois lever l'exception quelque part ailleurs pour que le tout fonctionne sans encombre.
Pourriez-vous m'éclairer sur la méthodologie de la manipulation en question?
Merci d'avance!
Je débarque sur Visual Basic aka VB (inutile de préciser que c'est dans un cadre universitaire ;-) )
Je fais actuellement face à une problématique de l'ordre d'Exception non gérée
→ J'ai créé un convertisseur monétaire qui convertit de façon bidirectionnelle
(monnaie a vers monnaie b et vice versa)
L'algorithme est fonctionnel SAUF que...
lorsque j'efface le contenu d'une de mes deux TextBox j'ai instantanément un message d'erreur : Forcément, mes variables assignées aux deux TextBox étant typées en Double, lorsque la cellule est vide c'est le conflit String versus Double.
Ci-dessous mon code pour une des deux TextBox (pour l'autre c'est l'exact inverse)
Dim euros As Double
euros = EurosBox.Text
If EurosBox.Text = "" Then
DollarsBox.Text = ""
Else
DollarsBox.Text = euros * 1.207
End If
Etant donné que j'ai réglé dans le code la problématique de la case vide, je présume que je dois lever l'exception quelque part ailleurs pour que le tout fonctionne sans encombre.
Pourriez-vous m'éclairer sur la méthodologie de la manipulation en question?
Merci d'avance!
1 réponse
-
Bonjour,
Dim euros As Double
If EurosBox.Text = "" Then DollarsBox.Text = "" Else euros = EurosBox.Text DollarsBox.Text = euros * 1.207 End If-
- Non, pas la définir, l'affecter
ton codeDim euros As Double 'là tu définis euros = EurosBox.Text 'là tu affectes, si ton textBox est vide ça plante If EurosBox.Text = "" Then DollarsBox.Text = "" Else DollarsBox.Text = euros * 1.207 End If
le code de f894009Dim euros As Double 'là il défini If EurosBox.Text = "" Then DollarsBox.Text = "" Else euros = EurosBox.Text 'là il affecte, si ton textBox est vide ça ne vient pas ici, ça ne plante pas DollarsBox.Text = euros * 1.207 End If
-