RECHERCHEV

Bonjour,

je cherche à utiliser la fonction recherchev pour aller chercher une valeur sur un autre fichier.

la valeur A4 est le nom a rechercher dans le fichier '[Journal de paie 2021.xlsx] dans la feuille2 et j'ai sélectionné la plage des noms où il faut qu'il recherche la valeur A4; ensuite il faut qu'il prenne la valeur de la colonne 27 soit la colonne AA ; valeur exacte.

=RECHERCHEV(A4;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$A$65;27;FAUX)

résultat :#REF! je dois oublier quelque chose mais je ne vois pas quoi, si vous pouvez m'aider,

merci beaucoup.

12 réponses

  1. Bonjour

    La plage de recherche n'est pas bonne

    =RECHERCHEV(A4;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$AA$65;27;FAUX)

    Cordialement
    0
    1. Bonjour

      comme cela
      =RECHERCHEV(A4;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$AA$65;27;0)

      ta matrice de recherche doit tenir compte de la totalité de ton tableau '[Journal de paie 2021.xlsx]Feuil2'!$A$2:$AA$65
      0
      1. Super merci beaucoup...

        et plus compliqué comment lui dire d'aller chercher la ligne du dessous
        exemple de mon fichier à remplir :
        nom montant de l'autre fichier montant de l'autre fichier

        XXX AA2 AA3

        pas facile à comprendre, excusez-moi...
        0
        1. Re,

          pour ma part je n'ai pas compris ta demande !
          0
          1. Re,

            alors en D4 colle cette formule qui est longue puisqu'elle doit identifier le classeur, l'onglet et la plage plusieurs fois dans la formule
            '[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20
            et incrémente là vers le bas

            =SI(INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5)="";DECALER(INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5);1;0);INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5))

            toute fois il serait possible de raccourcir un peu la formule en nommant la plage '[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20 exemple List ce qui ramènerait l'identification à 'LAtn4n7Gzks_fichier-B.xlsx'!List
            et la plage '[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20 nommée Nom '[LAtn4n7Gzks_fichier-B.xlsx]Nom et donc la formule deviendrait

            =SI(INDEX('LAtn4n7Gzks_fichier-B.xlsx'!List;EQUIV(A5;'LAtn4n7Gzks_fichier-B.xlsx'!Nom;0);5)="";DECALER(INDEX('LAtn4n7Gzks_fichier-B.xlsx'!List;EQUIV(A5;'LAtn4n7Gzks_fichier-B.xlsx'!Nom;0);5);1;0);INDEX('LAtn4n7Gzks_fichier-B.xlsx'!List;EQUIV(A5;'LAtn4n7Gzks_fichier-B.xlsx'!Nom;0);5))

            0
            1. c'est trop compliqué pour moi, mais merci beaucoup pour votre aide.

              Bonne fin de soirée.
              0
              1. Re,

                je vais t'expliquer, au début tu avais cette formule de base

                =RECHERCHEV(A4;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$F$65;27;FAUX)

                que j'ai remplacé par
                INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5)

                j'ai simplement précédé cette formule par une conditionnelle
                =SI(INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5)="" alors j'ai encadré la formule de base par un DECALER ;1;0) pour descendre d'une ligne
                DECALER(INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5);1;0)

                et sinon ; la formule de base, ce qui donne au final
                =SI(INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5)="";DECALER(INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5);1;0);INDEX('[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$F$20;EQUIV(A5;'[LAtn4n7Gzks_fichier-B.xlsx]Feuil1'!$A$4:$A$20;0);5))

                0
                1. juste pour le plaisir de comprendre, j'ai tapé cette formule

                  =SI(INDEX('[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;EQUIV(A5;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;0);5)="";DECALER(INDEX('[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;EQUIV(A5;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;0);5);1;0);INDEX('[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$67;EQUIV(A5;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;0);5))

                  mais ça ne marche pas, si vous avez le temps...

                  Bonne journée.
                  0
                  1. Re,

                    il faut impérativement que les plages soient identiques

                    [Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68

                    Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$67
                    0
                    1. =SI(INDEX('[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;EQUIV(A5;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;0);5)="";DECALER(INDEX('[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;EQUIV(A5;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;0);5);1;0);INDEX('[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;EQUIV(A5;'[Journal de paie 2021.xlsx]Feuil2'!$A$2:$CZ$68;0);5))

                      valeur renvoyée #N/A désolée...
                      0
                      1. Re,

                        ton tableau est bien dans le fichier nommé Journal de paie 2021.xlsx sur l'onglet nommé Feuil2, la plage de recherche est bien $A$2:$CZ$68 et dans la 5éme colonne soit la colonne E
                        0