Bonjour,
rien qu'en lisant ceci, on voit ce qui se passe, et qui défie le bon sens.
Alors que j'ai bien dimensionné ma variable qui la calcule as string
additionner ces "string", c'est les concaténer !
Le "+" sera traité comme un opérateur de concaténation "&"
exemple :
1 2 3 4 5 6 7 8 9 10 11 12 13
| Sub toto()
Dim UnFauxChiffre As String
Dim UnAutreFauxChiffre As String
' pourtant, j'y ai bien mis des chiffres dans mes variables ?!
UnFauxChiffre = 1
UnAutreFauxChiffre = 2
' ouais, VBA a compris que c'était des chiffres, mais comme t'es dans une chaine de caractère
' il a correctement affecté ta valeur "chiffre" en une valeur "chaine de caractère" dans tes variables String
MsgBox UnFauxChiffre + UnAutreFauxChiffre
End Sub |
on obtient pas 3 .... mais 12
et si on teste ça :
MsgBox UnFauxChiffre + UnAutreFauxChiffre = UnFauxChiffre & UnAutreFauxChiffre
On obtiendra "VRAI"
D'où, je l'espère, la solution évidente que tu dois mettre en place et que tu as compris au travers de cette explication ?
Partager