Problème entre macro et formule

J

Julien

Guest
J' ai fait une macro simple sans VBA de mise en forme (suppression de colonnes...).
Je m'explique : j'importe un fichier chaque mois dans une feuille (feuille 3). Sur ce fichier, seulement 2 colonnes m'interessent. A partir de ces 2 colonnes, j'ai une formule recherchev dans une autre feuille (juillet) qui renvoie les valeurs.
J'ai donc fais un bouton avec une macro de mise en forme simple.
Elle marche bien, mais quand j'importe une nouvelle fois, les cellules dans la feuille 2 me donnent #REF!
Je ne comprends pas pourquoi.
Pouvez vous m'aider?
Je vous joins un exEmple de mon fichier sans la macro que j'ai éliminé.
Merci d'avance
 

Pièces jointes

  • Classeur3.zip
    24.3 KB · Affichages: 24
  • Classeur3.zip
    24.3 KB · Affichages: 25
  • Classeur3.zip
    24.3 KB · Affichages: 25
M

Minick

Guest
Salut,

Essai de remplacer la fomule d colonne C par:
=RECHERCHEV(A9;INDIRECT("'Mise en forme voulue'!$A$3:$O"&NBVAL(INDIRECT("'Mise en forme voulue'!A:A";VRAI))+1;VRAI);2;FAUX)

et E par:

=RECHERCHEV(A9;INDIRECT("'Mise en forme voulue'!$A$3:$O"&NBVAL(INDIRECT("'Mise en forme voulue'!A:A";VRAI))+1;VRAI);12;FAUX)


@+

Minick
 
J

Julien

Guest
Merci pour ta réponse mais je ne vois pas comment elle prend en compte la macro.
Le problème à mon avis est de pouvoir importer par dessus l'ancien fichier sans changer la formule ou en la changeant automatiquement.
 
M

Minick

Guest
re,

en fait ta macro tu la lances comme avant
tu importe et tu mets en forme avec ta macro
et normalement les formules que g données doivent tjrs etre valide

la contrainte et que ta feuille de mise en forme voulu ait tjrs le meme nom

le fait de passer par un indirect dans mon exemple te permet de ne pas te retrouver avec des #ref kan tu manipules ta feuille de donner

@+

Minick
 
J

Julien

Guest
Je reviens vers toi pour le même problème que l'autre jour.
Quand j'importe à nouveau le fichier, la macro se réalise bien mais elle décale des cellules et marque #REF pour d'autres.
Tu m'as conseillé l'autre jour de me servir de la fonction INDIRECT. Les cellules sur lesquels je l'ai mise marche bien elles.
Par contre je ne sais pas où mettre la fonction INDIRECT dans les formules dont je me sert. Je te les donne, si tu peux m'aider :

1- =(D9+INDEX(Conso!E:E;EQUIV(A9;Conso!A:A;0);1))/2
2- =SI(OU(G9>20%;G9<-20%);ARRONDI(((MOYENNE(INDEX(Conso!C:E;EQUIV(A9;Conso!A:A;0);0))+F9)/2*1,25)/5;0)*5;"")

Je te remercie
 

Statistiques des forums

Discussions
314 450
Messages
2 109 727
Membres
110 552
dernier inscrit
jasson