Bonjour,
est-il possible de créer une formule dans une cellule Excel?
Si oui comment?
En fait je ne veux pas que ma cellule contienne le résultat d'une fonction mais belle et bien la fonction elle-même.
Merci pour votre aide
Bien cordialement
Version imprimable
Bonjour,
est-il possible de créer une formule dans une cellule Excel?
Si oui comment?
En fait je ne veux pas que ma cellule contienne le résultat d'une fonction mais belle et bien la fonction elle-même.
Merci pour votre aide
Bien cordialement
? Et bien tu saisie le nom de ta fonction dans la cellule du style
avec la fonction déclarée dans un module par exemple :Code:=MAFonction(D18)
;)Code:
1
2
3 Function MaFonction(r As Range) As Integer MaFonction = r.Row End Function
super merci...
mais comment tu fais pour définir la fonction?
c'est à dire créer le truc du genre
Code:
1
2 =SOMMEPROD(((I2N2)+(natinv="lot"))*(inv05)*(Site=$I$1)*(NomProjet=$F$1))
je suis pas très clair... désolé...
je voudrais créer dynamiquement maFonction.
Dans un module tu écrit
Code:
1
2
3
4 Function MaFonctionPerso(r as range, i as integer) 'ce qu'elle doit faire MaFonctionPerso=r.cells(1,1) + i end function
et dans ton classeur excel tu ecrira
ce qui affichera si A12 vaut 22 :Code:=MaFonctionPerso("A12", 9)
31
Je pense que gojira veut juste savoir comment il peut "écrire" la "formule" dans la cellule par VBA.
Si c'est le cas, un exemple:
Je ne connais pas trop SOMMEPROD et ne comprends donc pas ta "formule".Code:Cells(8, 1).FormulaR1C1 = "=SUM(R1C:R[-2]C)"
J'ai l'impression que tu y fais appel à des variables.
Dans ce cas, il faut isoler les variables de la chaine entre guillemets.
Dis-nous pour éviter qu'on se casse la tête pour rien.
Il y a quelques trucs à savoir lors de la création de formules Excel par VBA.
Entre autres:
Les noms des fonctions doivent s'écrire en anglais
Les points-virgules sont remplacés par des virgules
Merci beaucoup Alain Tech, c'est exactement ça.
En ce qui concerne la formule, ne te prends pas la tête je ne la comprends pas encore. En fait je travaille à blinder une application développée sous excel en VBA par quelqu'un d'autres.
Et des colonnes de formules ont été saisies à la main ce qui fait que les formules ont été perdues. Donc pour éviter les problèmes je verrouille les feuilles excel et je saisie donc les formules dynamiquement au chargement en VBA.
Merci pour ton aide.