RechercheV sur plusieurs feuilles

Bonjour,

J'ai besoin de votre aide pour résoudre un pb. En fait, je n'arrive pas à utiliser la fonction RechercheV sur plusieurs feuilles.

J'ai pourtant suivi la syntaxe que j'ai pu trouver dans différents posts, i-e :

=SIERREUR(RECHERCHEV(S3;BGI2C0041!$S$1:$X$1000;6;FAUX);"'");SIERREUR(RECHERCHEV(S3;BGI2C0040!$S$1:$X$1000;6;FAUX);"'")

Mais l'erreur suivante apparaît :

image

Je vous remercie par avance pour votre aide.

Cordialement,

Hello,

c'est possible de partager un fichier, ce sera plus simple pour t'aider

Sinon Il y une erreur au niveau des parenthèse, ta première fonction (sierreur) ce stop après les premier guillement donc quand tu écris une deuxième fonction sierreur, excel ne comprend pas pourquoi il y a deux fonction côte à côte

=SIERREUR(RECHERCHEV(S3;BGI2C0041!$S$1:$X$1000;6;FAUX);SIERREUR(RECHERCHEV(S3;BGI2C0040!$S$1:$X$1000;6;FAUX);"'"))

Voici une proposition qui est déjà syntaxiquement valide

C'est un fichier pro, donc je ne vais pas pouvoir le partager, désolé.

Sinon, sur le principe, on peut bien faire une recherchV dans feuilles distinctes (ici BGI2C0040 et BGI2C0041) ?

tu peux toujours l'anonymiser tu laisses juste les 20 premières lignes et tu changes les valeurs en 1,2,3,4,5,etc apr exemple

déjà merci Mc Charon pour ta correction. Cela m'aide déjà pas mal.

Ce que je voulais faire est effectif, mais une amélioration est nécessaire tout de même. Il y a 2 axes d'amélioration dû à 2 "pbs" :

- Le nom des feuilles est variable en fonction d'un import X ou Y.

- Le nombre de feuilles importées est variable aussi en fonction d'un import X ou Y.

Je vous explique la situation :

J'ai un classeur Excel avec : un Template et un nombre variable de feuilles générées lors du lancement d'une macro, cf. ci-dessous pour le Template :

image

Explications : dans la colonne U je récupère le nom des feuilles (AA, BB, CC, etc...).

Jusqu'à maintenant j'avais utilisé le code suivant dans la cellule R3:

=SIERREUR(RECHERCHEV(S3;AA!$S$1:$X$1000;6;FAUX);SIERREUR(RECHERCHEV(S3;BB!$S$1:$X$1000;6;FAUX);SIERREUR(RECHERCHEV(S3;CC!$S$1:$X$1000;6;FAUX); "'"))))

C'est à dire que si la valeur que j'ai en S3 est présente dans ma feuille AA (dans la plage S1-X1000 alors une valeur présente dans la feuille vient s'inscrire dans le Template dans la colonne R.

Le code tel quel fonctionne, mais : les problèmes sont que le nom des feuilles et leur nombre varie en fonction de l'import, i-e que à chaque import il faut rajouter/enlever des RechecheV dans ma cellule R3 et modifier leur nommage. --> Ce qui peut être très long.

Avez-vous une solution à me proposer ?

J'espère avoir été assez précis, si ce n'est pas le cas, n'hésitez pas à me demander plus de précisions.

Merci par avance pour votre aide.

Hello,

Pour ça il faut passer par du vba

Voilà un petit code (il existe plus opti mais flemme), j'ai fait comme hypothèse que chaque tableau feuille est similaire, et que ta feuille avec ta formule se trouve en premier

Function recherche_multi(ref As Range, oRng As String, col As Integer)
    For Each ws In Sheets 'parcours chaque feuille
        If ws.Index <> 1 Then 'on ne prend pas la premiere

            otab = ws.Range(oRng) 'on cree un tbl
            pos = PosArray(otab, 1, ref) 'on cherche notre cle dans le tabl
            If pos > 0 Then 'si on trouve
                recherche_multi = otab(pos, col) 'on recupere la valeur
                Exit For 'on quitte la function
            End If

        End If
    Next ws
End Function

'Function - Trouve la position d'une cle dans la colonne col d'un tbl
Function PosArray(tbl, col, cle)
    PosArray = -1
    For ii = LBound(tbl) To UBound(tbl) 'on parcours la col pour trouver la cle
        If tbl(ii, col) = cle Then PosArray = ii: Exit For
    Next ii
End Function

et ci-joint un exemple de comment utiliser la fonction

Super, Merci Mc Charon . Je regarde ça en début d'aprem .

Bonjour à tous

Très probablement faisable sans VBA par PowerQuery également. Mais sans fichier représentatif, PowerQuery nécessitant les vraies en-têtes des colonnes pour modéliser...

On peut même sans doute se passer de l'import pour récupérer l'info directement dans les fichiers

ça marche,

Par contre prochain fois met un fichier, met des valeurs aléatoires ou supprime les
avec juste un screen écran, on est pas au max pour trouver la bonne solution

Rechercher des sujets similaires à "recherchev feuilles"