[EXCEL 2003] : Formule dans VBA

JulienB

XLDnaute Junior
Re bonjour Le Forum,

Comment executer cette formule sous VBA ?

=DECALER(INDIRECT(TEXTE(AUJOURDHUI();"mmmm")&"!a64");0;JOUR(AUJOURDHUI())+1)

Je cherche en fait, grace a une macro, ouvrir un fichier .XLS et lancer cette formule qui n'est pas enregistrer dans le fichier que j'ouvre... donc l'executer en memoire !

AHHHHH !!!!
 

Raja

XLDnaute Accro
Re : [EXCEL 2003] : Formule dans VBA

Bonjour,

Sans le fichier qui va avec et sans savoir ce que tu essayes d'obtenir comme résultat exactement, il est très difficile de te conseiller. Peut être, il y aura une solution beaucoup plus simple aussi. A toi.
 

job75

XLDnaute Barbatruc
Re : [EXCEL 2003] : Formule dans VBA

Bonjour JulienB, salut Raja,

La formule définit une cellule, en VBA appelons-la cel :

Code:
Set cel = Sheets(Format(Date, "mmmm")).Range("A64").Offset(, Day(Date) + 1)

Edit : si l'on veut seulement la valeur v de cette cellule :

Code:
v = Sheets(Format(Date, "mmmm")).Range("A64").Offset(, Day(Date) + 1)

A+
 
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : [EXCEL 2003] : Formule dans VBA

Bonjour Julien, Raja, Job

L'enrergistreur de macros donne ceci:

Code:
ActiveCell.FormulaR1C1 = _
        "=OFFSET(INDIRECT(TEXT(TODAY(),""mmmm"")&""!a64 ""),0,DAY(TODAY())+1)"

Surtout ne me demandez pas pourquoi:).
 

JulienB

XLDnaute Junior
Re : [EXCEL 2003] : Formule dans VBA

en fait voici comment j'ai fait :

Dim Presence As String

Presence = "=DECALER(INDIRECT(TEXTE(AUJOURDHUI();" & Chr(34) & "mmmm" & Chr(34) & ")&" & Chr(34) & "!a64" & Chr(34) & ");0;JOUR
(AUJOURDHUI())+1)"

Sheets("Feuill1").Range("A30").FormulaLocal = Presence

Et ca marche pas mal
 

Discussions similaires

Réponses
5
Affichages
311

Statistiques des forums

Discussions
312 196
Messages
2 086 102
Membres
103 117
dernier inscrit
augustin.morille