Sub nono()
Dim t As String
t = "x^2+1"
i = 2
'La suivante est OK :
MsgBox Evaluate(Replace(t, "x", i))
i = 0.5
'La suivante ne fonctionne pas :
MsgBox Evaluate(Replace(t, "x", i))
'Suis-je obligé de faire cet incroyable détour ? :
MsgBox Evaluate(Replace(t, "x", Replace(i, ",", ".")))
'Pourtant, i ne contient pas de virgule !!!
End Sub
une solution simple : tu change le séparateur de décimales dans le panneau de configuration/ paramètres régionaux.
En fait, il y a conflit entre le paramétrage US du VBA et le paramétrage français d'Excel. En uniformisant en mettant un point (.) partout, tu n'auras plus le problème.
Sinon, tu peux essyer de le modifier avec <les Apis, si ca t'intéresse, dis-le, je te chercherai un bout de code. ;)
une solution simple : tu change le séparateur de décimales
dans le panneau de configuration/ paramètres régionaux.
En fait, il y a conflit entre le paramétrage US du VBA et
le paramétrage français d'Excel.
En uniformisant en mettant un point (.) partout, tu
n'auras plus le problème.
Sinon, tu peux essyer de le modifier avec <les Apis, si ca
t'intéresse, dis-le, je te chercherai un bout de code. ;)
une solution simple : tu change le séparateur de décimales dans le panneau de configuration/ paramètres régionaux.
En fait, il y a conflit entre le paramétrage US du VBA et le paramétrage français d'Excel. En uniformisant en mettant un point (.) partout, tu n'auras plus le problème.
Sinon, tu peux essyer de le modifier avec <les Apis, si ca t'intéresse, dis-le, je te chercherai un bout de code. ;)