fonction indirect et ses guillemets

tatich836

XLDnaute Nouveau
Bonjour,

voici une formule qui me permet d'aller dans le document fichier 1 et de retourner les lignes contenant des valeurs numériques sur la plage B13: B475.

=SI(ESTNUM(INDIRECT("'[fichier1 "&$C3&"-"&$B3&"-"&$A3&".xls]'!$B13:$B475"));LIGNE(INDIRECT("'[fichier1 "&$C3&"-"&$B3&"-"&$A3&".xls]'!$B13:$B475")))


Seulement, la formule renvoie le même résultat même quand je l'étire sur toute une colonne.
Je me suis demandée si ce n'était pas un problème de guillemets.

Merci d'avance pour votre aide.
 

tototiti2008

XLDnaute Barbatruc
Re : fonction indirect et ses guillemets

Bonjour tatich,

Ou peut-être dû au contenu de A3, B3, C3, A4, B4, C4....
Mais comme on ne connait le contenu d'aucune de ces cellules, il va être difficile de te répondre
Je crois comprendre que le fichier est variable, tous les fichiers concernés sont ouverts ?
 

tatich836

XLDnaute Nouveau
Re : fonction indirect et ses guillemets

Bonjour tototiti2008,

merci d'avoir répondu.
Effectivement, tous les fichiers sont ouverts. j'envoie un fichier exemple en esperant que ce sera un peu plus clair.
 

Pièces jointes

  • fichier exemple.xlsx
    36 KB · Affichages: 59
  • fichier exemple.xlsx
    36 KB · Affichages: 56
  • fichier exemple.xlsx
    36 KB · Affichages: 56

tototiti2008

XLDnaute Barbatruc
Re : fonction indirect et ses guillemets

Re,

Dans la version envoyée, comme A3, B3 et C3 sont respectivement égaux à A4, B4 et C4, c'est normal que ça renvoie le même résultat
Mais sans doute est-ce dû à ton anonymisation des données...

Ce que j'ai aussi du mal à comprendre, c'est que ta formule renvoie une matrice, or ta cellule ne renverra qu'une valeur, la formule est incomplète et tu fais d'autre calculs sur cette matrice ?
 

tototiti2008

XLDnaute Barbatruc
Re : fonction indirect et ses guillemets

Re,

Une autre remarque :
Il ne manquerait pas le nom de la feuille dans l'adresse que tu construis avec INDIRECT ?
Je viens d'essayer et chez moi ça donne un truc du genre :

='[Toto.xls]Feuil3'!$D$13:$D$33

Donc
'[NomFichier.xls]NomFeuille'!RefPlage

Si tu expliques ce que tu cherches à faire, on pourrait peut-être t'aider pour la formule
Qu'y a t-il dans les cellules $B13:$B475 des différents fichiers ?
 

tatich836

XLDnaute Nouveau
Re : fonction indirect et ses guillemets

Re,

le nom de la feuille y est , je l'ai enlevé par mégarde en copiant la formule sur le forum.
la plage B13: B475 contient tous les code clients de l'hôtel.
A partir de ces codes, je dois pouvoir trouver le nom des clients et leurs créances.

Je viens de trouver une solution qui marche plutot bien. AU LIEU DE DELIMITER UNE PLAGE, j'utilise la fonction ligne et voici ce que j'obtiens :

=(SI(ESTNUM(INDIRECT("'[Report DD "&$C3&"-"&$B3&"-"&$A3&".xls]1-BAgee'!$B"&13+ LIGNE()-3));INDIRECT("'[Report DD "&$C3&"-"&$B3&"-"&$A3&".xls]1-BAgee'!$B"&13+ LIGNE()-3))).

QU'en penses tu ?
 

tatich836

XLDnaute Nouveau
Re : fonction indirect et ses guillemets

Ok,je t'envoie un exemple pour que tu comprennes ce que je veux faire.

DISONS que j'ai 16 fichiers différents ( dans leur contenu) mais leur présentation est la même. Pour résumer je t'envoie un seul fichier que je nomme 16fichiers. A partir de 16fichiers, je dois créer le fichier exemple(envoyé précedemment) dans lequel je determine pour chaque hôtel les clients qui nous doivent de l'argent et la somme dûe.
J'utilise donc indirect pour que le fichier exemple ne traite que celui des 16 fichiers ouverts.

la formule que je t'ai envoyé tout à l'heure doit me permettre de reprendre les code client lorsque les cellules de ces dernières sont non nulles.

J'espere que c'est un peu plus compréhensible.
 

Pièces jointes

  • 16fichiers.xlsx
    15.4 KB · Affichages: 62

tototiti2008

XLDnaute Barbatruc
Re : fonction indirect et ses guillemets

Re,

Si j'ai compris quelque chose, tu veux qu'il te liste les Solde Balance des clients de l'hotel du fichier concerné qui ne sont pas nuls, puis dans les colonnes suivantes qu'il te mette le nom des clients concernés et les infos suivantes ?
Si c'est ça, ça risque d'être un peu chaud, mais bon...
 

tototiti2008

XLDnaute Barbatruc
Re : fonction indirect et ses guillemets

Re,

Je te conseille d'oublier INDIRECT pour commencer, et d'essayer de faire des formules qui fonctionnent sur un fichier avant d'introduire le "problème" du fichier variable

ensuite les références aux plages du fichier pourront être remplacés par tes INDIRECT

un essai, à valider par Ctrl+Maj+Entrée pour obtenir le compte/Account des clients dont le Solde est non nul

Code:
=PETITE.VALEUR(SI('[16fichiers-1.xlsx]créance '!$D$14:$D$40<>0;'[16fichiers-1.xlsx]créance '!$A$14:$A$40);LIGNE(A1))
 

Discussions similaires

Réponses
2
Affichages
3 K

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz