Formule en texte, INDIRECT et décaler colonne

Bonjour à tous,

Je suis sur un projet qui me permettrait de gagner beaucoup de temps lorsque je compile des données de plusieurs tableurs mais je suis dans une impasse.

Explication :

Je possède une dizaine de tableur Excel tous basé sur la même trame (mais avec de légère différence sur chaque tableur). Ces tableurs sont remplis au fil du temps et j'ai besoin d'en faire une compilation régulièrement. Actuellement, le système consiste à faire un simple copier-coller des données, ce qui me fait perdre beaucoup de temps...

Je cherche à automatiser ce système en compilant les données de mes différents tableurs automatiquement au travers de formules, comme ça il me suffit d'ouvrir tous mes tableurs en même temps pour que le tableur de compilation récupère les données tout seul et hop, j'ai mes résultats.

Problème, comme mes tableurs ont de légère différence, pour m'assurer que la 1ère donnée est prise au bon endroit, je préfère écrire en toute lettre la première cellule et après, utiliser INDIRECT pour compiler les données pour créer la formule qui s’exécute sauf que je ne trouve pas la solution pour faire un copier glisser de la formule en incrémentant le numéro de colonne.

Vu que les exemples concret parlent mieux que les mots, vous trouverez en pièce jointe l'idée :

  • 3 de données brut nommé AB ; ABC ; ABCD
  • 1 tableur de compilation qui vient piocher dans les totaux des tableurs cités ci-dessus ses données.
Sur le 2ème onglet, en colonne B le nom du tableur, en colonne C la colonne et en D la ligne.

En E4, la formule =INDIRECT("'"&$B4&$C4&$D4) qui construit ma formule et l’exécute pour récupérer la première valeur.

Il me manque l'élément qui me permettra de faire "colonne +1" à chaque recopie de la formule, donc 1ère valeur en colonne C, puis 2ème en colonne D et ainsi de suite.

Pensez-vous que cela est possible ?

Merci pour votre aide.

86compilation.xlsx (19.26 Ko)
25ab.xlsx (14.98 Ko)
29abc.xlsx (15.59 Ko)
44abcd.xlsx (15.79 Ko)

Bonjour

Pour décaler d'une colonne vers la droite en incrémentant

Tu es en colonne E (La 5)

=INDIRECT("'"&$B4&$C4&$D4+COLONNE()-5)

à incrémenter vers la droite

Cordialement

Bonjour Amadéus,

Merci pour ta réponse.

J'ai essayé mais ça ne fonctionne pas.

Avec cette formule, on incrémente le numéro de ligne, moi je cherche à incrémenter la lettre de la colonne et ça ce n'est pas mathématiques (ou en tout cas je ne vois pas comment faire).

En incrémentant ta formule cela donne : =INDIRECT("'"&$B4&$C4&$D4+COLONNE()-5)

'[ABC.xlsx]Test'!C3

'[ABC.xlsx]Test'!C4

'[ABC.xlsx]Test'!C5

'[ABC.xlsx]Test'!C6

Moi je cherche :

'[ABC.xlsx]Test'!C3

'[ABC.xlsx]Test'!D4

'[ABC.xlsx]Test'!E5

'[ABC.xlsx]Test'!F6

Donc plutôt quelque chose comme =INDIRECT("'"&$B4&$C4+COLONNE()-5&$D4) sauf que faire C+1 ça donne une erreur, ça ne donne pas D...

Merci quand même.

Amadéus, ta formule m'a donné une idée.

Du coup, après quelques recherches supplémentaires et des tests multiples, j'ai trouvé la solution !

=INDIRECT("'"&$B4&ADRESSE($D4;COLONNE(INDIRECT($C4&$D4))+COLONNE(B4)-2;4))

A incrémenter vers la droite.

Ne sait-on jamais, ça servira peut-être à d'autres.

Merci pour ton aide.

Rechercher des sujets similaires à "formule texte indirect decaler colonne"