Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Modification d'une formule par VBA

  • Initiateur de la discussion Matt78
  • Date de début
M

Matt78

Guest
Bonsoir à toutes et tous,

Me revoilà après avoir débrousaillé, un peu, mon soucis.
Peut on et comment, modifier une formule qui se trouve ds une cellule.
Merci par avance pour votre aide, et bonne soirée.
Matt78
 

AlainTech

XLDnaute Nouveau
Le plus simple pour voir comment écrire une formule est de lancer l'enregistreur de macros, taper ta formule, arrêter l'enregistreur et regarder la macro écrite dans le module qui s'est créé.
 
M

Matt78

Guest
bonsoir AlainTech,le forum,

Je connais le générateur de macros, c'est pour cela que j'ai spécifié en VBA, car j'ai la même ds plusieurs classeurs créé par VBA. Mais la formule fait référence au nom d'un classeur créé. c'est pourquoi je souhaite savoir si on peut et comment modifier la formule d'une cellule en VBA.
bonne soirée AlainTech, toutes et tous.
Matt778
 
M

Matt78

Guest
Bonjour 12passage, le forum,

Merci pour ton début de solution. Effectivement, je n'avait pas remarqué cette fonction, néanmoins elle me pose un soucis car je n'arrive pas a référencer un autre classeur ou une autre feuille..
Ex:
Private Sub workBook_open()

Dim f1, f2, c1 As String
f1 = 'Feuil2'
f2 = 'Feuil3'
c1 = 'A1'
Worksheets('Feuil1').Range('A1').Formula = '=Worksheets(f1).range(c1).value + Worksheets(f2).range(c1).value'

End Sub
Cette macro ne fonctionne pas. As tu une idée?
Bonne journée
Matt78
 

Gibson94

Nous a quitté
Repose en paix
Bonjour Matt78, 2passage, AlainTech, le forum

Je te propose de remplacer ta formule

Worksheets('Feuil1').Range('A1').Formula = '=Worksheets(f1).range(c1).value + Worksheets(f2).range(c1).value'

par

Worksheets('Feuil1').Range('A1').Cells = Worksheets(f1).Range(c1).Value & Worksheets(f2).Range(c1).Value
 
M

Matt78

Guest
Bonjour Gibson94, le forum,

Non car en fait après le signe égal, cela doit être une chaine qui devient la formule de la cellule 'A1'.
Merci de l'info,@+.
Matt78
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…