Excel - RechercheV

Fermé
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 - 5 mars 2022 à 21:49
PapyLuc51 Messages postés 4456 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 20 février 2025 - 5 août 2022 à 16:06
Bonsoir,
je reporte grâce à la recherche V les tarifs d'une base de donnée "=RECHERCHEV(C15;BDD!$A$20:$D$5000;4;FAUX)", les formules fonctionnent parfaitement.. mais seulement sur certaines références de ma liste et pas sur d'autres, je ne comprends absolument pas pourquoi. Format de cellule identique, écriture identique.. par exemple le report de cette réforme "4903-16" fonctionne mais "3964-29-01" pas celle la. Est-ce à cause de la structure? comment y remédier?
Merci d'avance.
A voir également:

16 réponses

DjiDji59430 Messages postés 4211 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 6 mars 2025 690
12 mars 2022 à 10:24
Bonjour à tous,

On parle dans le vide !
Mets donc ton fichier "en panne" sur cijoint, que les intervenants puissent t'aider !

Crdlmt
1
DjiDji59430 Messages postés 4211 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 6 mars 2025 690
5 mars 2022 à 23:20
Bonjour,

Un fichier EXCEL (test ou non), complété par des explications exhaustives et des exemples remplis à la main, mis sur https://www.cjoint.com/ , ainsi que ta version d'Excel, permettrait aux intervenants de répondre plus précisément à ta question.
Crdmt
0
Raymond PENTIER Messages postés 58878 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 mars 2025 17 297
Modifié le 6 mars 2022 à 01:28
Bonjour.

C'est peut-être à cause de la structure, mais peut-être aussi à cause des saisies, même si tu as l'impression que les écritures sont identiques ; mais as-tu pensé aux espaces ?
Et pour y remédier, il faudrait déjà savoir en quoi "les formules fonctionnent parfaitement.. mais seulement sur certaines références " ; il s'affiche un message d'erreur ? le résultat n'est pas celui attendu ?
On attend ton fichier ...

0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 425
6 mars 2022 à 07:44
Bnjour
pouvez vous vérfifier fonctionnement de votre formule en copiant en C15 la valeur cherchée et la collant dans la liste du champ de recherche
Si ça fonctionne comme ça, c'est que dans la liste, votre valeur ou le format ne sont pas identiques
crdlmnt

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 1
6 mars 2022 à 19:34
Bonjour,
Merci pour vos retours. J'ai essayé et ça ne fonctionne toujours pas. J'ai créé un exemple:

https://www.cjoint.com/c/LCgsGaGtWxM

Merci d'avance
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 425
6 mars 2022 à 19:55
Heu....!!!
votre formule de recherche s'arrête à la ligne 20 et votre code est sur la ligne 21
crdlmnt
0
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 1
6 mars 2022 à 19:36
Aussi, j'aimerais bien ne pas faire apparaitre #N/A sur les cases vides **
Merci beaucoup
Jérôme
0
Raymond PENTIER Messages postés 58878 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 mars 2025 17 297
6 mars 2022 à 22:28
Bonjour Jérôme.

Le fichier exemple ne contient ni la donnée "4903-16" ni la donnée "3964-29-01".
Ta première formule =RECHERCHEV(C15;BDD!$A$20:$D$5000;4;FAUX) était intéressante, puisqu'allant jusqu'à la ligne 5000 ; malheureusement ta nouvelle formule =RECHERCHEV(E3;B1:C20;2;FAUX) ne te permet pas de trouver la donnée "3964-29-09" qui est en ligne 21, comme te l'a signalé Vaucluse : si tu remplaces ce "20" par n'importe quel nombre plus grand, ta formule en F3 fonctionne !

Et pour répondre à ta demande sur le message d'erreur #N/A, la formule de ton exemple doit devenir
=SIERREUR(RECHERCHEV(E3;B1:C9999;2;FAUX);"")
; et la formule de ton vrai fichier doit devenir
=SIERREUR(RECHERCHEV(C15;BDD!$A$20:$D$5000;4;FAUX);"")
...

Cordialement.
0
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 1
7 mars 2022 à 21:55
Bonsoir, oui en effet j'ai fait une erreur sur ma page test.
Le problème est que je ne peux pas partager le tableau complet alors j'ai copier/coller sur un nouveau classeur les feuilles et j'ai réduit le tout à quelque référence mais sur cette version ma formule fonctionne bien sur les références qui ne fonctionne pas sur le tableau d'origine.. sur mon classeur original ça ne fonctionne pas sur toutes les références, c'est plutôt incroyable. j'ai inséré une colonne dans ma base de donnée sur mon premier tableau, j'ai copier/coller toutes mes références (environ 5000) j'ai effacer la colonne d'origine et même problème, toujours quelques références en erreurs pourtant j'ai vérifier et revérifier la formule je ne comprends pas.
Merci pour tes corrections concernant le message d'erreur.
Je te joins des images au cas ou et je précise que la référence existe bien dans la BDD je l'ai même copier depuis cette dernière.
https://www.cjoint.com/c/LChuZ6PpFTM
https://www.cjoint.com/c/LChu2i6DBqM
Merci
Cordialement
Jérôme
0
Raymond PENTIER Messages postés 58878 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 mars 2025 17 297
8 mars 2022 à 01:10
Jérôme, on ne peut pas rechercher et rectifier une erreur dans un fichier Excel qu'on ne peut pas manipuler.
Tu nous montres des photos ! Difficile d'en tirer quelque chose ...
Ta formule en D15 s'appuie sur la feuille BDD, que tu n'as pas envoyée ; je ne peux donc pas vérifier si tu as bien saisi
[3964-29-05]
avec 10 caractères, ou
[3964-29-05 ]
avec 11 caractères (l'espace final).
Je ne peux pas non plus vérifier si ton fichier considère 3964-29-05 comme une date, le 29 mai 3964 !
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 425
Modifié le 8 mars 2022 à 09:01
bonjour
avez vous testé ma proposition de vérification des formats, rappel
  • copier la cellule de la valeur cherchée
  • la coller valeur et format dans la base de données en remplacement de la supposée défaillante
  • et voir le résultat

(ou dans le sens inverse, base vers recherche
si la recherche fonctionne, c'est que le format ou le texte ne sont pas conformes entre les deux
crdlmnt

0
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 1
11 mars 2022 à 21:50
Bonsoir, oui j'avais essayé dans les deux sens, rien à faire. J'ai récupérée nouvelle version de ma base de donnée (simplifiée) chez mon fournisseur, nouveau tableau et ça fonctionne, avec même ref.. un mystère.
Par contre j'ai désormais deux bases de données (2 feuilles) j'aimerais modifier ma formule pour que la recherche V se fasse sur ces deux feuilles, comment la construire? Je pars de "=RECHERCHEV(C14;Sheet1!$A$2:$E$5000;5;FAUX)" et je dois ajouter ma recherche dans "KPL FRK1 2022 V3!$A$2:$E$5000;4 toujours pour la ref inscrite dans C14.
Merci d'avance pour votre aide précieuse
cdt
Jérôme
0
Raymond PENTIER Messages postés 58878 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 mars 2025 17 297
12 mars 2022 à 02:24
Non ! ça ne marche pas comme ça !
Il faut trouver ce qui provoque l'erreur au départ.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 425
12 mars 2022 à 10:51
Bonjour tous
on essaye avec:
pour chercher dans l'une ou dans l'autre
=SIERREUR(SIERREUR(RECHERCHEV(C14;Sheet1!$A$2:$5000;5;0);RECHERCHEV(C14;'KPL FRK1 2022 V3'!;$A$2:$E$5000;4;0));"")
pour sortir les deux liées
=SIERREUR(RECHERCHEV(C14;Sheet1!$A$2:$5000;5;0);"")&" "&SIERREUR(RECHERCHEV(C14;'KPL FRK1 2022 V3'!;$A$2:$E$5000;4;0);"")
crdlmnt
0
Raymond PENTIER Messages postés 58878 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 7 mars 2025 17 297
12 mars 2022 à 16:28
Bonjour à tous.
Salut, ami Vaucluse.

Le seul inconvénient de ta seconde formule est que son résultat est un texte, et pas une valeur numérique.
Comme Jérôme voudra certainement faire des calculs à partir des prix, il faudrait , à mon avis, supprimer le
&" "
du milieu et placer toute ta formule à l'intérieur de CNUM( ) pour obtenir
=CNUM( SIERREUR(RECHERCHEV(C14;Sheet1!$A$2:$5000;5;0);"") & SIERREUR(RECHERCHEV(C14;'KPL FRK1 2022 V3'!;$A$2:$E$5000;4;0);"") )
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 425
12 mars 2022 à 19:18
salut Raymond
ma seconde formule est destinée à lier deux résultats et n'a pas la même fonction que la première, je l'ai donnée pour info, mais je ne crois pas qu'elle soit utilisable dans ce cas
crdlmnt
0
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 1
12 mars 2022 à 19:49
Bonsoir,
Merci à vous deux. Ces formules sont complexes, je n'y arriverais pas sans vous. Excel m'embêtait avec le nom de ma feuille donc j'ai resserré les caractères.
Désormais pour ma description j'ai: =SIERREUR(RECHERCHEV(C7;Sheet1!$A$2:$E$5000;3;0);"")&" "& SIERREUR(RECHERCHEV(C7;'KPLFRK12022V3 '!$A$2:$E$5000;3;0);"")

Pour mes tarifs catalogues: =CNUM( SIERREUR(RECHERCHEV(C7;Sheet1!$A$2:$E$5000;5;0);"") & SIERREUR(RECHERCHEV(C7;'KPLFRK12022V3 '!$A$2:$E$5000;5;0);"") )

Pour mes achats (en fonction des codes remise) =E7-E7*SI(D7="A";45%;SI(D7="B";35%;SI(D7="C";40%;SI(D7="D";33%;FAUX))))

Pour mes codes remise: =SIERREUR(RECHERCHEV(C7;Sheet1!$A$2:$E$5000;4;0);"")&" "& SIERREUR(RECHERCHEV(C7;'KPLFRK12022V3 '!$A$2:$E$5000;4;0);"")

Erreurs restantes:
- Pour mes tarifs catalogues, si la case C7 est vide il affiche #VALEUR!
- Dans la colonne "Code remises" il n'aligne pas les caractères bien que j'ai recentré tous les caractères de la colonne, (y compris dans mes bases de données), ce n'est qu'esthétique mais je suis un brin maniaque.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 425
Modifié le 12 mars 2022 à 20:53
sans savoir ce que vous avez comme données, difficile de vous donner des infos, mais pour quelques points:
  • simplifiez les libellés dans les formules en nommant les plages que vous utilisez avec des noms simples et utilisez les noms dans vos formules (par exemple remplacer l'ensemble 'KPLFRK12022V3'!$A$2:$A$5000 par KPL) voir ruban / formule / définir un nom
  • pour les affichages valeurs si C7 est vide, encadrer l'ensemble de votre formule en doublant les SIERREUR

=SIERREUR(SIERREUR(formule1);"")&SIERREUR(formule 2);"");"")
  • pour les alignements, sans connaître vos données on ne pourra rien vous proposer

si vous pouvez déposez votre modèle ici
https://www.cjoint.com/
et revenez coller le lien créé sur le site
crdlmnt
0
jerome334s Messages postés 83 Date d'inscription dimanche 20 octobre 2013 Statut Membre Dernière intervention 6 mai 2023 1
18 mars 2022 à 23:29
Bonsoir,
Merci bien, abréger les formules est très interessant.
Pour les valeurs ça me donne =CNUM(SIERREUR(SIERREUR(RECHERCHEV(C8;Sheet1;5;0);"")&SIERREUR(RECHERCHEV(C8;KPL;5;0);"");"")) mais ne fonctionne pas, même si je triple, j'ai du mal.
Merci encore, excellent week-end
Jérôme
0
PapyLuc51 Messages postés 4456 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 20 février 2025 1 459
5 août 2022 à 16:06

Bonjour jerome334s

Il semblerait que ce sujet soit en rapport avec cette nouvelle question !!

Cordialement

0