Recherche sur plusieurs lignes
Résolu
lolo24150
Messages postés
39
Date d'inscription
Statut
Membre
Dernière intervention
-
lolo24150 Messages postés 39 Date d'inscription Statut Membre Dernière intervention -
lolo24150 Messages postés 39 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'enregistre des données sur une feuille "Donnée".
Équipe/Nom/ Date de Début/Date de Fin/.....
Donc plusieurs lignes possible avec le même nom
J'aimerais sur une autre feuille quand j'appelle l'équipe"voulue" avoir toutes la liste avec les noms et les différents dates de début et fin afférant à chaque noms.
Pour les noms pas de souci.
Après , j'ai mis cette formule que je déroule.Exemple pour "Début" et en B22 le nom.
=SI(LIGNES(Donnée!$1:1)<=NB.SI(Nom;B22);INDEX(Début;PETITE.VALEUR(SI(Nom=B22;LIGNE(INDIRECT("1:"&LIGNES(Début))));LIGNES(Donnée!$1:1)));"")
Mais le fait d'incrémenter les lignes fait que je saute des données.Ou si je bloque la ligne sur 1 je peux récupérer que la première valeur pour un nom.
Merci par avance pour votre aide.
J'enregistre des données sur une feuille "Donnée".
Équipe/Nom/ Date de Début/Date de Fin/.....
Donc plusieurs lignes possible avec le même nom
J'aimerais sur une autre feuille quand j'appelle l'équipe"voulue" avoir toutes la liste avec les noms et les différents dates de début et fin afférant à chaque noms.
Pour les noms pas de souci.
Après , j'ai mis cette formule que je déroule.Exemple pour "Début" et en B22 le nom.
=SI(LIGNES(Donnée!$1:1)<=NB.SI(Nom;B22);INDEX(Début;PETITE.VALEUR(SI(Nom=B22;LIGNE(INDIRECT("1:"&LIGNES(Début))));LIGNES(Donnée!$1:1)));"")
Mais le fait d'incrémenter les lignes fait que je saute des données.Ou si je bloque la ligne sur 1 je peux récupérer que la première valeur pour un nom.
Merci par avance pour votre aide.
A voir également:
- Recherche sur plusieurs lignes
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Écrire plusieurs lignes dans une cellule excel mac - Guide
- Recherche photo - Guide
- Je recherche une chanson - Guide
- Moteur de recherche 1fichier ✓ - Forum Réseaux sociaux
3 réponses
Bonsoir
difficile de vous répondre sans voir le modèle, on ne connait ni vos tableaux, ni les champ nommés.
pouvez vous déposer un modèle, (même anonymisé si besoin) ici:
http://mon-partage.fr
et revenir coller ici le lien créé sur le site
à vous lire
crdlmnt
La qualité de la réponse dépend surtout de la clarté de la question, merci!
difficile de vous répondre sans voir le modèle, on ne connait ni vos tableaux, ni les champ nommés.
pouvez vous déposer un modèle, (même anonymisé si besoin) ici:
http://mon-partage.fr
et revenir coller ici le lien créé sur le site
à vous lire
crdlmnt
La qualité de la réponse dépend surtout de la clarté de la question, merci!
Re
sauf erreur der compréhension, vous avez des décalages de lignes dus au limites des champs nommés
et par ailleurs , Excel à partir de 2007 contient un code oplus simple pour éviter les affcihages d'erreur
donc
1° revoyez vos limites des champs nommés Nom et Data Equipe pour les faire commencer en ligne 1 plutôt qu'en ligne 2
2°) ensuite le code INDIRECT ne sert à rien, puisqu'il faut caler tous les champs sur le même nombre de lignes dans la formule
voyez cette formule en B10, qui semble répondre à ce que vous cherchez
=SIERREUR(INDEX(Nom;PETITE.VALEUR(SI(DataEquipe=$C$3;LIGNE($A$1:$A$10000));LIGNE($A1)));"")
Notez aussi que ces matricielles sont gourmandes en capacité et donc, si vous pouvez réduire la hauteur des champs (ligne 10000 est elle bien utile?) le fonctionnement sera plus rapide!
crdlmnt
La qualité de la réponse dépend surtout de la clarté de la question, merci!
sauf erreur der compréhension, vous avez des décalages de lignes dus au limites des champs nommés
et par ailleurs , Excel à partir de 2007 contient un code oplus simple pour éviter les affcihages d'erreur
donc
1° revoyez vos limites des champs nommés Nom et Data Equipe pour les faire commencer en ligne 1 plutôt qu'en ligne 2
2°) ensuite le code INDIRECT ne sert à rien, puisqu'il faut caler tous les champs sur le même nombre de lignes dans la formule
voyez cette formule en B10, qui semble répondre à ce que vous cherchez
=SIERREUR(INDEX(Nom;PETITE.VALEUR(SI(DataEquipe=$C$3;LIGNE($A$1:$A$10000));LIGNE($A1)));"")
Notez aussi que ces matricielles sont gourmandes en capacité et donc, si vous pouvez réduire la hauteur des champs (ligne 10000 est elle bien utile?) le fonctionnement sera plus rapide!
crdlmnt
La qualité de la réponse dépend surtout de la clarté de la question, merci!
... vois pas le problème. Il suffit d'utiliser la même formule qui renvoie la même ligne dans tous les cas, en changeant simplement le champ de INDEX
=SIERREUR(INDEX(Début;PETITE.VALEUR(SI(DataEquipe=$C$3;LIGNE(Donnée!$A$1:$A$9999));LIGNE($A1)));"")
et ainsi de suite pour les autres champs à ressortir
Pour info:
faites attention à la concordance des hauteurs de champ, vous avez une formule, qui traite les lignes de 1 à 500 avec un champ début qui va de 1 à 10000??
dans les deux ITEM "LIGNE(...), les noms de feuille sont inutiles, il s'agit simplement de ressortir les N° et hauteur de champ>.
crdlmnt
=SIERREUR(INDEX(Début;PETITE.VALEUR(SI(DataEquipe=$C$3;LIGNE(Donnée!$A$1:$A$9999));LIGNE($A1)));"")
et ainsi de suite pour les autres champs à ressortir
Pour info:
faites attention à la concordance des hauteurs de champ, vous avez une formule, qui traite les lignes de 1 à 500 avec un champ début qui va de 1 à 10000??
dans les deux ITEM "LIGNE(...), les noms de feuille sont inutiles, il s'agit simplement de ressortir les N° et hauteur de champ>.
crdlmnt
Ci-joint fichier "recherche"
https://mon-partage.fr/f/HkNyuONJ/
Je n'ai pas tout mis les gestionnaires de noms
Merci