synthese fichier en VBA ou pas (utilisation concatenation infructueuse)

idiomea

XLDnaute Junior
Bonjour à tous,

le but de ma requete est de trouver une solution à un problème qui me hante depuis plus d'une semaine,
j'ai cherché déjà un peu partout, j'ai trouvé quelque chose qui s'y rapproche mais cela ne fait pas ce que je veux et je ne sais pas modifier.


Voici mon problème,
Je suis en stage, et je dois faire une analyse de fichier Excel où sont des informations sur des chantiers

j'ai près d'une centaine de fichier excel, et dans chaque fichier excel j'ai le premier onglet qui EST EXACTEMENT le même. il ya tjrs les mêmes informations aux mêmes endroits, seuls changent les quantités.


j'ai donc 100 fichiers qui contienent 526 lignes que je souhaitent mettre dans un tableau qui fera donc 526 lignes par 100 colones (chaque colone represente un chantier et chaque ligne reprend la quatité utilisé sur le chantier)



Déjà, je sais faire cela quand cela reste dans le meme fichier xls en utilisant concatener

j'ai crée cette ligne pour prendre la valeur de i23 dans l'onglet test
(j'ai ecris test dans B4)
=INDIRECT(CONCATENER("'";B$4;"'";"!";"i23"))


cependant quand je passe à ecrite le chemin complet du fichier en nom juste l'onglet cela ne fonctionne plus.


en ecrivant ceci en F22
'Q:\SOULA\NOUVEAU SOULA\CO - COMMERCIAL\02-BORDEREAU CHIFFRAGE\MCFS-2009\Dossier principal\version avec prix pylônes\2005\[Abbeville-ville-le marclet.xls]abbeville'!i23

j'obtient que excel affiche ce que j'ai ecrit (logique j'ai mis un ' devant)

si je modifie la case en rajoutant un = devant, alors j'obtiens la valeur souhaité. (normal, cela defini le lien vers la case souhaité)


j'ai donc essayé de faire =CONCATENER("=";F22)
j'obtient :

='Q:\SOULA\NOUVEAU SOULA\CO - COMMERCIAL\02-BORDEREAU CHIFFRAGE\MCFS-2009\Dossier principal\version avec prix pylônes\2005\[Abbeville-ville-le marclet.xls]abbeville'!i23

je n'obtiens pas la valeur de la cellule i23 de l'onglet abbeville du fichier abbeville-le marclet mais la réecriture du lien avec un = devant


j'ai essayé de faire =INDIRECT(CONCATENER("=";F22))
mais j'obtient #REFF lorsque je ferme le fichier d'où viennent les informations.


ce que j'aimerais c'est c'est une macro copiant toute la colonne que je souhaite.

Ou alors si quelqu'un pouvait modifier cette macro pour quelle s'adapte à mon cas :

https://www.excel-downloads.com/threads/vba-synthese-de-plusieurs-classeurs.121508/

sauf que moi il faut copier une colonne ( la L )
et mes fichiers sont dans plusieurs repertoires (avec plusieurs niveaux)
j'ai mis en A3 le lien vers le fichier il ya au meme niveau 2005 2006 2008 et 2009 et dans ces niveaux il peut y avoir jusqu'a 3 sous niveaux


j'espere avoir été clair, je met mon fichier excel pour plus de clareté.
cela fait déjà 1 semaine que je ne peux plus rien faire, et si je le fais à la main je vais mettre deux semaines.

PS : je ne connais rien de rien de rien au VB

Très très cordialement
Guillaume
 

Pièces jointes

  • carbonne portet test .xls
    43.5 KB · Affichages: 91

JCGL

XLDnaute Barbatruc
Re : synthese fichier en VBA ou pas (utilisation concatenation infructueuse)

Bonjour à tous,

Je n'ai pas compris ton fichier
Je ne comprends pas la nécessité du CONCATENER() avec INDIRECT().
Pourrais-tu apporter des précisions ?

A+ à tous
 

Discussions similaires

Réponses
12
Affichages
304
Réponses
2
Affichages
281

Membres actuellement en ligne

Statistiques des forums

Discussions
312 206
Messages
2 086 213
Membres
103 158
dernier inscrit
laufin