Ecrire ac VBA formule ds case Excel

Résolu/Fermé
ptit81 Messages postés 29 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 6 décembre 2012 - 12 sept. 2007 à 14:24
ptit81 Messages postés 29 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 6 décembre 2012 - 12 sept. 2007 à 15:34
Je suis novice en vba.

je voudrais écrire dans la case A3 d'excel une formule dépendant d'une case que l'utilisateur écris dans un userform.
Pour simplifier, on appelle cette case b et on dit qu'elle est égale à B13

mon code est le suivant:
Dim a, b As String

b = "B13"
a = "=SI(" & b & ">0;1;0)"
Range("A3").select
Selection.Value = a

ça ne marche pas.
J'ai aussi essayé de mettre
ActiveCell.FormulaR1C1 = a

ça ne marche pas non plus.

quelle est la fonction à utiliser?
A voir également:

4 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
12 sept. 2007 à 15:11
Bonjour,

Amusant ton truc, je dirai que ça devrait marcher. Apparement Excel ne supporte pas les ; dans la chaine... (bug?)
En attendant pour palier à ça tu pourrais utiliser INDIRECT.
Ex
en A3 ta formule: =SI(INDIRECT(A4)>0;0;1) qui restera inchangée,
en A4 tu mets à jour la reference A13 par ton prog.

Dim b As String
b = "B13"
Range("A4").Value = b


cdt
0
ptit81 Messages postés 29 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 6 décembre 2012 2
12 sept. 2007 à 15:25
OK, j'vois l'idée. Je connaissais pas la fonction Indirect
C'est pas exactement ce que je veux mais ça me dépanne.
Si quelqu'un a une autre idée, je suis preneur.
En tout cas, merci à toi eriiic
0
Utilisateur anonyme
12 sept. 2007 à 15:29
Bonjour,

Votre formule est écrit en français sous Excel. Sous VBA toute formule doit être écrite en anglais !

Range("A3").Value =  "=IF("" & b & "">0,1,0)"


astuce : pour connaitre la formule sous VBA, créer d'abord une formule type sous l'enregistreur de macro,
vous aurez ainsi la syntaxe exacte.

Lupin
0
ptit81 Messages postés 29 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 6 décembre 2012 2
12 sept. 2007 à 15:34
CA MARCHE

Merci beaucoup...
0