Fonction recherche ou autre

Bonjour à tous,

J'ai quelques interrogation sur un tableau que je suis en train de créer. (j'ai la version Microsoft Office Standard 2013).

1.

Je voulais savoir s'il y avait une formule ou une macro qui permet de rechercher des infos dans un tableau pour les coller sur une autre feuille ? Dans mon cas, j'ai une base de données sur la feuille "SUIVI FORMATION" et je voudrais que sur la feuille "PASSEPORT DE CARRIERE", il me mets toute les données relatives à la personne choisie dans la cellule B5.

J'avais trouvé une formule "FILTRE" et "CHOISIR" cependant la version Excel ne prend pas ces fonctions.

2.

C'est à peut prêt la même chose que le point précédent sauf que les données ne sont pas affichées de la même manière, dans l'onglet "POLYVALENCE" je voudrais également faire apparaître les valeurs de la ligne 5 s'il y a la lettre Q dans la case correspondante au nom de la cellule B5 de la feuille "PASSEPORT".

3.

Pour terminer je voulais savoir si Excel pouvais me sortir la dernière date "entretien" en également me la recopier en fonction du nom, je connais la formule RECHERCHV, cependant ça ne fonctionne pas car la donnée n'est pas fixe. Par exemple dans l'onglet 'ENTRETIEN D'EVALUATION" il y a plusieurs colonne : DATE ENTRETIEN 1 ; DATE ENTRETIEN 2 ; DATE ENTRETIEN 3... et je souhaiterais que Excel me trouve la dernière date entrée pour me la recopier dans la cellule correspondant par rapport au nom de la cellule B5 de la feuille "PASSEPORT"

Je ne sais pas si tout est faisable, mais si vous avez des idées ? Je recherche en parallèle mais je n'arrive pas à trouver ce que je souhaite faire.

J'ai mis en pièce jointe, une partie du fichier, ou j'ai expliquer sur la feuille "PASSEPORT DE CARRIERE" ce que je souhaiterais réussir à faire.

J'espère que mes explications sont assez claires

Merci d'avance, et dans l'attente je continue à regarder si je trouve des solutions.

Bonne fin de journée.

12filtre.zip (455.95 Ko)

Hello,

Une première proposition de réponse, je te mettrai la V2 quand je continue

L'appel de la bière et de la mer prime sur Excel

8copie-de-filtre.zip (468.10 Ko)

Edit 1 : je pense que si on passait pas PowerQuery pour retraiter la données et effectuer des tris ça pourrait être plus simple pour les formules a base de décaler

Edit 2 : voici la suite mais mes compétences s'arrêtent la pour les versions 2013, je n'ai pas assez pratiqué ces versions c'était l'année de mon BAC j'étais bien trop jeune pour me mettre la tête dans Excel

Ce serait plus simple avec une version actualisée si tu y viens un jour

16copie-de-filtre.zip (460.65 Ko)

@+

Merci,

C'est déjà pas mal comme solution, à la maison j'ai la version 2019, alors c'est plus simple, mais au bureau il n'y a que Excel et en 2013, pas de possibilité de changer, je suis bloqué avec cette version.

Ce qui serait idéal c'est que les données se rangent dans plusieurs colonnes comme la formule FILTRE le ferais dans la version récente. Je vais voir si j'arrive à faire quelque chose avec les formules.

A moins qu'il existe d'autres solutions ?

merci beaucoup en tout cas.

Bonne soirée.

L'autre solution serait de passer par PowerQuery pour faire une base triée ce qui permettrait de générer les différentes tables dont tu aurais besoin et avec les fonctions décaler je pense que ce serait facile à faire en plusieurs colonnes

@+

Merci,

J'ai téléchargé le complément PowerQuery, maintenant faut que je comprenne comment cela fonctionne.

Bonjour à tous

Une proposition PowerQuery

Si c'est plus simple tu peux supprimer la requête Tout et charger dans l'onglet chacune des requêtes

Il faudra adapter le code du module de l'onglet Passeport

8synthese-pq.zip (473.68 Ko)

Bonjour,

C'est vraiment pas mal, bravo. J'essaie de comprendre comment tu as fait afin de le refaire sur mon tableau, avec un peu de difficulté. Je n'arrive pas à comprendre comment tu as fait la requête "choix". !?

J'aime beaucoup ce que ça donne, après je peux peut-être faire un seul tableau que je range dans des endroits spécifiés (ou c'est toujours sur une nouvelle feuille) ?

sans titre png1

A moins de faire avec RECHERCHEV ?

RE

Tu peux mettre les tableaux résultant où tu veux mais cela n'aime pas trop les superpositions et du coup il a tendance à shifter des lignes

Souvent on est obligé de passer par des formules pour ce PB de mise en page

J'ai nommé la cellule ou on choisit le nom Choix

Ok je passerais alors par des formules pour la mise en forme.

J'ai réussi à créer la requête choix, j'ai créé les requêtes avec les tableaux

image

Mais honnêtement j'essai de comprendre, mais j'ai du mal. Tu as ajouté des colonnes ?

J'essaie de comprendre pour pouvoir le reproduire. Je vois qu'à gauche on aperçoit les étapes appliquées, mais je ne comprends pas trop.

Le pire c'est que dans une autre vie, j'ai travaillé avec PowerBI mais j'ai perdu la main depuis.

Re

Oui les étapes sont à droite : le détail d'une étape sélectionnée apparait dans la barre de formule et en cliquant sur le petit rouage de la ligne d'étape

En regardant et le nom des étapes et ce détail tu dois pouvoir comprendre

Je passe par le ruban ou le clic droit dans 95% des cas

Il m'arrive de modifier dans la barre de formule mais pas plus (pas besoin d'éditer tout le code M)

Je n'ai ajouté que la colonne indiquant la source afin que Tout soit lisible...

Bonjour,

Je pense avoir réussi sauf sur 2 points :

1) Quand j'ai fait la requête "Tout", il me sort 2 colonnes "NOM-PRÉNOM", j'ai vue qu'on peux les fusionner, cependant ce n'est pas ce que tu as fait, alors j'ai du louper quelque chose ?

image

2) Je ne comprends pas comment tu as fait pour que ton tableau s'actualise automatiquement lors du filtre de la cellule "Choix", je suis obligé de passer par "Actualiser". Comment as-tu fait ?

Bonne journée

Bonjour

1) Quand j'ai fait la requête "Tout", il me sort 2 colonnes "NOM-PRÉNOM", j'ai vue qu'on peux les fusionner, cependant ce n'est pas ce que tu as fait, alors j'ai du louper quelque chose ?

Tes tableaux d'origine ont cette colonne sauf EntretiensPro et Liste_formations : j'ai juste modifié le titre dans ces 2 requête pour qu'il soit homogène avec les autres

2) Je ne comprends pas comment tu as fait pour que ton tableau s'actualise automatiquement lors du filtre de la cellule "Choix", je suis obligé de passer par "Actualiser". Comment as-tu fait ?

Il y a une ligne de code VBA dans le module de la feuille PASSEPORT DE CARRIERE INTERACTI

Ah oui en effet, il y avait un "S" en trop.

Je n'avais pas pensé à vérifier les codes, c'est super, ça fonctionne maintenant.

Bon, il ne me reste plus qu'a trouver une solution pour que les données se copient ailleurs :)

Merci beaucoup pour ton aide

RE

Tu peux tenter de récupérer les résultats dans Excel. Si le nombre de colonnes est fixe tu verras selon les onglets si ça provoque des shifting de lignes ou pas...

Tu peux tenter de récupérer les résultats dans Excel

Comment ça, en chargeant les requêtes à l'emplacement souhaité ?

Un petit soucis, j'ai modifié un des tableaux donc j'ai modifié ma requête comme il le faut, maintenant la macro ne fonctionne plus

image

Je n'arrive pas à comprendre car j'ai fait comme avant. Quand je vais dans les requêtes, elles sont correctes car le filtre fonctionne.

(j'ai mis des données fictifs pour pouvoir envoyer mon tableau (avec les requêtes) et non le précédent).

7macro.zip (774.33 Ko)

Re

Le tableau résultant de la requête Tout n'est pas nommé Tout dans ton classeur mais Tableau_DonnéesExternes_1 : le code VBA ne trouve donc plus ce tableau

Soir renommer le tableau résultant, soit modifier le code

Ah oui merci c'est bon.

Bon j'ai essayé de mettre les requêtes dans des endroits spécifiques mais ça ne fonctionne pas comme je le voudrais.

J'ai essayé la rechercheV mais ce n'est pas l'idéal car il me laisse des lignes vides si la valeur recherchée ne correspond pas et je n'ai pas trouvé de fonction qui me permet de coller à la suite sans saut de ligne.

RE

Bon j'ai essayé de mettre les requêtes dans des endroits spécifiques mais ça ne fonctionne pas comme je le voudrais.

J'ai essayé la rechercheV mais ce n'est pas l'idéal car il me laisse des lignes vides si la valeur recherchée ne correspond pas et je n'ai pas trouvé de fonction qui me permet de coller à la suite sans saut de ligne.

Peux-tu préciser les PB correspondant à "ça ne fonctionne pas comme je le voudrais"

J'ai fait un essai et cela rend pas mal en dehors des largeurs de colonnes imposées pour tous

13synthese2-pq.pdf (31.73 Ko)

Quand au RECHERCHEV il faudrait voir tes formules

Bonjour,

Je reçois ce message quand je veux actualiser 2 tableaux, notamment quand je change de personne en B5 (mais que pour certaine personne, de plus ça fonctionne très bien dans le tableau "tout") :

image

Pourtant, dans le volet, on voit bien qu'il y a 4 résultats :

image

et en effet les largeurs de colonne change à chaque fois que j'actualise les tableaux, mais ça j'ai modifié dans les paramètres du tableau et ça ne bouge plus.

Ensuite j'ai essayé de mettre le code VBA à jour pour qu'il me mette les tableaux à jour, mais je n'y arrive pas, la macro bloque toujours.

Je pense avoir trouvé la solution car pour l'instant mes tests ont fonctionnés :

j'ai simplement modifié les propriétés : "Remplacer le contenu des cellules si nécessaire, supprimer les cellules inutilisées" à la place "insérer des cellules..."

image

Par contre pour le code qui actualise les tableaux, je n'ai toujours pas réussi

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect([Choix], Target) Is Nothing Then [Tout].ListObject.QueryTable.Refresh
End Sub

ca c'est le code actuel, mais je voudrais qu'il actualise tous les tableaux :

le nom des tableaux sont :

Compétences_spécialisations

Évènement_de_carrière

Suivi_formation_2

Grille_polyvalence_2

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect([Choix], Target) Is Nothing Then [Tout].ListObject.QueryTable.Refresh
    If Not Intersect([Choix], Target) Is Nothing Then [Compétences_spécialisations].ListObject.QueryTable.Refresh
    If Not Intersect([Choix], Target) Is Nothing Then [Évènement_de_carrière].ListObject.QueryTable.Refresh
    If Not Intersect([Choix], Target) Is Nothing Then [Suivi_formation_2].ListObject.QueryTable.Refresh
    If Not Intersect([Choix], Target) Is Nothing Then [Grille_polyvalence_2].ListObject.QueryTable.Refresh
End Sub

mais à mon avis, ce n'est pas comme cela qui faut écrire le code car :

image
Rechercher des sujets similaires à "fonction recherche"