RECHERCHE avec deux critères en colonnes

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonjour Le Forum,

Je cherche à trouver le n° de ligne d’une recherche sur deux critères dans un tableau.

Pour cela dans un tableau, je prends :
- Une Date de la colonne B (la date d’un jour y est rapportée plusieurs fois) et la reporte en cellule AM2
- Un Lieu de la colonne E (le lieu existe sur plusieurs jours de la colonne A) et reporte en cellule AM3
- Dans la colonne X j’ai reporté la formule =LIGNE()

La cellule AM1 a reçu la formule matricielle suivante (Merci Monsieur BOISGONTIER) mais sans succès avec pour résultat = #NA

{=INDEX(ResLign;EQUIV(AM3;DECALER(ValCol3;EQUIV(AM2;Jour)-1;;SI(AM2<MAX(Jour);MIN(SI(Jour>AM2;LIGNE(ValCol3)))-LIGNE(ValCol3)+1;LIGNES(ValCol3)+1)-EQUIV(AM2;Jour));)+EQUIV(AM2;Jour)-1)}

Elle devrait me donner le résultat de la recherche faite avec AM2 & AM3, c'est-à-dire ce qu'il y a dans la cellule Colonne X correspondante.

Pouvez-vous m’aider à trouver mon erreur de saisie ?

Jour =FDC!$B$3:$B$253 (la DATE)

ValCOl3=FDC!$E$3:$E$253 (le LIEU)

ResLgn=FDC!$X$3:$X$253 (j'ai placé les numéro de lignes du tableau)

Meric,
Webperegrino
 

Jocelyn

XLDnaute Barbatruc
Bonjour le Forum,
Bonjour Webperegrino, Gosselien,

Pas sur d'avoir bien compris mais si tu veux le numéro de ligne ou les 2 valeur sont présentes pas besoin de la colonne X voir fichier joint

Cordialement
 

Pièces jointes

  • Deux critères de recherche.xls
    32.5 KB · Affichages: 81

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonjour Le Forum,
Je viens de trouver l'erreur dans mon fichier : Reslign et non Reslgn ; le résultat semble maintenant s'afficher.
Jocelyn, j'adopte votre proposition, c'est encore mieux.
J'utilise ensuite cette valeur dans la programmation VBA.
Merci à vous deux et bonne journée,
Webperegrino
 

Pièces jointes

  • Deux critères de recherche_2.xls
    29 KB · Affichages: 66

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum,
Gosselien,
Jocelyn,
Pour terminer cette discussion, et pour en trouver toutes les applications possibles, j'ai une dernière question.
Si dans ce fichier je crée un UserForm comprenant ComboBox1 pour le choix du Jour et Combox2 pour la valeur ValCol3, quelle ligne de code VBA permettrait d'obtenir une valeur Lign qui pourrait :
- être affichée dans un Label1 de l'UserForm par exemple,
- être utilisée ultérieurement dans la codification pour placer des valeur de l'UserForm en feuille2, dans le genre la placer la valeur d'un TextBox de l'UserForm en Sheets("Feuil2").Range("H" & lign).Value par exemple.

Je pense essayer avec une boucle For-Next sur la date intégrant une autre boucle sur ValCol3 pour connaître le numéro de ligne comme l'ai fait Jocelyn en formule hors UserForm, mais je ne connais pas encore ce code N° ligne en macro...
Merci d'avance,
Webperegrino
 
Dernière édition:

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum, Jocelyn, Gosselin,
Bonsoir,
Jocelyn, j'ai essayé d'appliquer la formule miracle qui affichait bien 11 pour 30/07/2016 & ICI1.
Quand j'ai choisie autre date et une autre référence de la colonne E la formule affiche #NOMBRE!
Idem pour d'autre requête et même quand je reviens sur le choix que tu avais marqué.
Que faut-il rectifier dans les paramètres (options ?) pour que la formule indique bien le résultat recherché ?
Avec F9 ça ne donne rien non plus.
Sinon peut-on faire ce type de recherche en code VBA ?
Webperegrino
 

Jocelyn

XLDnaute Barbatruc
re,

Hum hum sans voir le fichier je ne sais pas trop quoi te dire je viens de tester sur le fichier d'hier de changer la date et la référence cela fonctionne au cas ou date et référence ne sont pas sur la même ligne on a #N/A et je n'arrive pas a reproduire l'erreur #NOMBRE!

Mets un bout de fichier avec cette erreur

Cordialement
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonjour Le Forum, Gosselien,
Bonjour Jocelyn et merci d'analyser le fichier ci-joint.
J'y ai reprodui un construction similaire en feuille 2.
L'expression #NOMBRE! se renouvelle lors du complément par une nouvelle recherche.
Cordialement,
Webperegrino
 

Pièces jointes

  • Deux critères de recherche_Solution de Jocelyn.xls
    36.5 KB · Affichages: 73

Jocelyn

XLDnaute Barbatruc
re,

Dans le fichier que tu joins la formule avec les prénoms est =EQUIV(AM2&AM3;B:B&E:E;0) sauf que si tu regardes les prénoms sont en colonne D alors si tu écris =EQUIV(AM2&AM3;B:B&D:D;0) cela fonctionne après je n'avais pas fait attention mais tu es en fichier XLS soit un excel pas trop récent est peut être que ta version ne prend pas les colonnes entières alors a tester =EQUIV(AM2&AM3;B1:B1000&D1:D1000;0)

voir en te servant de plage nommées dynamique

voir fichier joint

Regardes et dis nous

Cordialement
 

Pièces jointes

  • Deux critères de recherche_Solution de Jocelyn.xls
    38 KB · Affichages: 70

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum,
Jocelyn,
Excellent,
J'ai replacé les références 2 en colonne E ; ça fonctionne.
Ça affiche #N/A seulement quand par exemple "Autre" est choisi avec "26/07/2016" (non présent dans le tableau.
Je vais donc faire en sorte que dans ce cas "" s'affiche et non "#N/A", par mise en forme conditionnelle.
Merci Jocelyn pour ta participation,
Cordialement,
Webperegrino
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonjour le Forum, Gosselien, Jocelyn,
C'est parfait , vos propositions fonctionnent et je vous en remercie.

Cette discussion étant clôturée, je voudrais, avec la nouvelle procédure d'affichage et de navigation du Forum - toutes mes félicitations au concepteur -, je ne trouve plus le lien pour mettre [RESOLU] dans le titre du premier message...
Cordialement,
Webperegrino
 

Discussions similaires

Réponses
3
Affichages
575

Statistiques des forums

Discussions
312 190
Messages
2 086 040
Membres
103 105
dernier inscrit
fofana