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

une variable dans une fonction ?

3 réponses
Avatar
lematou
Bonsoir à tous,

environement : xls2003 sous xp

Dans une variable NomFichier, j'ai une valeur contenant le nom du fichier où
se trouve le tableau dans lequel je vais rechercher les valeurs.

Je veux utiliser cette variable dans la fonction
RECHERCHEV(A6;'E:DATA200601.xls'!$A$2:$B$50;2;FAUX) et le tableau de la
matrice par la variable NomFichier qui Contient 'E:DATA200601.xls'.

J'ai essayé avec RECHERCHERV(A6;NomFichier!$A$2:$B$50;2;FAUX) Bien sur cette
dernière formulation ne marche pas.
Comment ecrire correctement cette formule ?
Ou Comment faire ?
Merci d'avance

3 réponses

Avatar
JpPradier
Bonjour

Il faut l'écrire comme ça :

RECHERCHEV(A6;['E:DATA200601.xls']Feuil1!$A$2:$B$50;2;FAUX)
Le nom du fichier doit etre entre crochets ( ne pas oublier l'antislash apres la lettre du
disque ) suivi du nom de la feuille avec un point d'exclamation.
A noter qu'il faut que le fichier DATA200601.xls soit ouvert.

j-p
Avatar
lematou
Merci pour ta collaboration JP
mais voilà que mon collègue qui à le problème que nous n'arrivons pas à
résoudre me reprécise le point suivant:
Dans la cellule A1, j'ai une valeur contenant le nom du fichier où se trouve
le tableau dans lequel je vais rechercher les valeurs.

J'ai une fonction : RECHERCHEV(A6;[DATA200601.xls]Feuil1!$A$2:$B$50;2;FAUX).

Je veux rendre cette fonction dynamique car le nom du fichier change par
anneé et pas mois :
DATA20061 pour l'année 2006 Mois 1 ou DATA200510 pour l'année 2005 Mois 10

Dans la cellule A1, je vais saisir les coordonnées du fichier où se trouve
le tableau dans lequel je vais rechercher les valeurs.
comme par exemple : E:TEMP[DATA200601.xls]Feuil1
J'ai essayé avec RECHERCHERV(A6;INDIRECT(A1&"!$A$2:$B$50");2;FAUX)
Bien sur cette dernière formulation ne marche pas quand le fichier est fermé
(non ouvert dans excel)
Le résultat de cette recherche est #REF!

Comment ecrire correctement cette formule ?
Ou Comment faire ? Est ce possible ?

en fait il est presque satisfait mais voudrait savoir s'il est aussi possible que cela fonctionne fichier fermé ?
a bientot


et encore merci
Jacks


Bonjour

Il faut l'écrire comme ça :

RECHERCHEV(A6;['E:DATA200601.xls']Feuil1!$A$2:$B$50;2;FAUX)
Le nom du fichier doit etre entre crochets ( ne pas oublier l'antislash apres la lettre du
disque ) suivi du nom de la feuille avec un point d'exclamation.
A noter qu'il faut que le fichier DATA200601.xls soit ouvert.

j-p





Avatar
JpPradier
Re

Comme je le précise au dessus, il faut que le fichier DATA... soit ouvert.
Avec le fichier ouvert, ta syntaxe fonctionne correctement chez moi.
La seule Alternative est de passer par une macro VBA.

j-p