format de nombre suite à déclaration de variable

supercrapaud

XLDnaute Occasionnel
Bonjour à vous tous !

J'ai un problème tout bête mais lorsque je recherche sur le forum, je dois mal le formuler car je ne trouve pas exactement ce que je cherche.

Mon problème est le suivant : j'ai une variable à plusieurs chiffres après la virgule nommée "cmup" dont le montant change à chaque fois.
Dans ma macro je voudrais rédiger un truc du genre :
Range("a1") = "=" & Range("b1").End(xlDown).Value & "*" & cmup

Cela devrait être à priori simple mais j'ai toujours le message d'erreur 1004. Il semblerait que lorsque je déclare ma variable, cela ne marche que si je mets cmup as integer. Toutes les autres (currency, double...) font planter. Or pour être précis, j'ai besoin que CMUP comprenne le maximum de décimales. Le pire étant que lorsque je mets MSgbox(cmup) tout va bien.

Comment faire pour avoir mon calcul ? D'avance merci.
 

Pierrot93

XLDnaute Barbatruc
Re : format de nombre suite à déclaration de variable

Bonjour,

pas tout compris moi... et tu veux renvoyer quoi en A1 ? une formule, un résultat ? vois pas la déclaration, ni l'initialisation de ta variable.... peut être la déclarer en "Double".... difficile à dire avec juste une ligne de code jetée sur un post...

bon après midi
@+
 

tototiti2008

XLDnaute Barbatruc
Re : format de nombre suite à déclaration de variable

Bonjour supercrapaud,

On dirait bien encore un soucis de séparateur de décimales
peut-être comme ça :

Code:
Range("a1").FormulaLocal = "=" & Range("b1").End(xlDown).Value & "*" & cmup

Edit : Bonjour Pierrot ;)
ReEdit : @Pierrot, pour explication, tu peux essayer de faire tourner le code là, ça plante chez moi :

Code:
Sub test()
Dim cmup As Double
    cmup = Log(2)
    Range("A1") = "=4*" & cmup
End Sub
 
Dernière édition:

supercrapaud

XLDnaute Occasionnel
Re : format de nombre suite à déclaration de variable

Bonjour à tous !

@Pierrot93: je veux juste rédiger une formule

@tototiti2008 : J'avais essayer de déclarer la variable en tant que Double mais sans succès... Par contre en cherchant sur le forum j'avais trouvé qu'on pouvait écrire Range("a1").Formula mais cela n'avait pas non plus marché.

Je vais essayer ce soir pour ta solution. en tout cas merci à vous pour vos réponses.
 

tototiti2008

XLDnaute Barbatruc
Re : format de nombre suite à déclaration de variable

Re,

Moi c'est les paramètres Windows en virgule et les options Internationales d'Excel en "Utiliser les séparateurs systèmes", c'est vrai que c'est bizarre :
si je me met en point sur Windows comme toi, pas de plantage
Si je me remet en virgule sur Windows et que je met le point dans Excel : plantage
Comme quoi les paramètres Windows doivent un peu prendre le pas sur ceux d'Excel, au moins à un moment de l'exécution...
 

Pierrot93

XLDnaute Barbatruc
Re : format de nombre suite à déclaration de variable

Re,

perso toujours les paramètres Windows en point et les options Internationales d'Excel en "Utiliser les séparateurs systèmes", windows et excel nous venant d'outre atlantique, moins de soucis avec cette configuration... enfin c'est juste mon avis....
 

tototiti2008

XLDnaute Barbatruc
Re : format de nombre suite à déclaration de variable

Re,

Bon à retenir, c'est vrai qu'avec un VBA qui utilise le point et une Excel qui utilise la virgule, pas étonnant qu'il se mélange un peu les pinceaux de temps en temps...
Je pense que tu as raison, ta config pose sûrement moins de problèmes (je me rappelle d'ailleurs qu'il y avait au moins une des versions d'Excel où les Scénarios recollaient des valeurs avec des points dans les tableaux, ce qui était très gênant sur une config française classique, évidement) :)
 

supercrapaud

XLDnaute Occasionnel
Re : format de nombre suite à déclaration de variable

Donc pour continuer sur la lancée.

Moi j'utilise les virgules donc les paramètres initiaux (comme la majorité des gens). du coup faut que je mettre formulalocal ? Car je vous suis un peu moins bien là...
 

Discussions similaires

Statistiques des forums

Discussions
312 571
Messages
2 089 797
Membres
104 275
dernier inscrit
Manu974