Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Formule VBA sur fichier externe

1 réponse
Avatar
Jimmy
Bonjour,

savez vous pour quelles raisons la fonction suivante ne fonctionne pas ?
range("B" & (a))=.foundfiles(a).worksheets("ANNEE").range("B11").value

cela entre dans un module avec une fonction de recherche
(application.filesearch) où a est une variable allant de 1 à
.foundfiles.count.
La fonction a pour objectif de ramener la valeur de la cellule B11 (entre
autres cellules) de l'ensemble des fichiers d'un répertoire sur un autre
fichier (toto.xls). Compte tenu du format, la consolidation en fonctionne
pas. La colonne A de toto.xls liste les noms de fichier et en colonne B je
souhaitais utiliser une fonction telle que décrite au-dessus.

cela reste dans la tendance du moment, à savoir récupérer des données de
fichier externe mais je n'ai pas trouvé de réponse adaptée. La fonction
INDIRECT permet d'évter une macro mais oblige d'ouvrir tous les fichiers.

Merci d'avance,
david.

1 réponse

Avatar
Frédéric Sigonneau
Bonjour,

Je crains que par macro il ne faille aussi ouvrir les fichiers. Ceci devrait
fonctionner (non testé cependant) :

Workbooks.Open .foundfiles(a)
range("B" & (a))¬tiveWorkbook.worksheets("ANNEE").range("B11").value
ActiveWorkbook.Close False

Sinon, la macro complémentaire de Laurent Longre Morefun.xll fournit une
fonction INDIRECT.EXT qui fonctionne comme INDIRECT, y compris sur des classeurs
fermés.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !



Bonjour,

savez vous pour quelles raisons la fonction suivante ne fonctionne pas ?
range("B" & (a))=.foundfiles(a).worksheets("ANNEE").range("B11").value

cela entre dans un module avec une fonction de recherche
(application.filesearch) où a est une variable allant de 1 à
.foundfiles.count.
La fonction a pour objectif de ramener la valeur de la cellule B11 (entre
autres cellules) de l'ensemble des fichiers d'un répertoire sur un autre
fichier (toto.xls). Compte tenu du format, la consolidation en fonctionne
pas. La colonne A de toto.xls liste les noms de fichier et en colonne B je
souhaitais utiliser une fonction telle que décrite au-dessus.

cela reste dans la tendance du moment, à savoir récupérer des données de
fichier externe mais je n'ai pas trouvé de réponse adaptée. La fonction
INDIRECT permet d'évter une macro mais oblige d'ouvrir tous les fichiers.

Merci d'avance,
david.