Avoir plusieurs valeurs correspondantes à une date

Bonjour à tous,

J'essaie de faire une rechercheV sur un formulaire excel 1 à partir d'un autre formulaire excel Planning.

Mon but est d'avoir toutes les valeurs de la colonne D en fonction des valeurs de la colonne A. Je m'explique:

  • J'ai une date présente dans plusieurs lignes de la colonne A (par exemple 08/03/2018 sur les lignes de 2, 7, et 10 à 13).
  • J'ai plusieurs valeurs différentes dans la colonne D (par exemple 518655, 518656, 518657...)

J'aimerai donc avoir toutes les valeurs lorsque je rentre la date 08/03/2018.

J'ai essayé cette formule: =SI(A1="";"";RECHERCHEV(A1;'Planning 2018'!A1:E14;4;FAUX)). Je sais qu'il faut normalement mettre les $ devant les numéros de colonnes et de lignes mais la formule ne fonctionnait pas. Celle-ci fonctionne à peu près, mais il y a encore un bug: la formule prend la valeur de la colonne D dès qu'elle trouve la date 08/03/2018. Donc je n'ai pas toutes les valeurs que je veux.

Pour plus de clarté, je vous joins le fichier.

Auriez-vous une solution à me proposer s'il vous plait?

Merci par avance!

Bonne fin de journée

JuSico

12aide-excel.xlsx (10.60 Ko)

Bonjour,

À vue de nez (et pour autant que j'aie bien compris), tu ne saurais pas obtenir les données attendues avec une RECHERCHEV (pour laquelle des '$' auraient effectivement été les bienvenus )

Si j'ai compris, donc, une proposition en pièce jointe.

Attention: il s'agit de formules matricielles: à la création et à chaque modification, valider à l'aide de la combinaison Ctrl+Shift+Enter (des accolades doivent apparaître, dans la barre de formule, autour de la formule)

Attention bis: la formule en A1 peut être copiée vers le bas uniquement. Celle en B1 peut être copiée en bas et à droite.

J'ai recopié jusqu'en ligne 15 (cfr cellules colorées)

bonjour

une contribution autrement

23jusico.xlsx (12.18 Ko)

cordialement

Bonjour U.Milité et tulipe_4,

Merci beaucoup pour vos réponses à tous les deux! La formule de U.Milité me correspond mieux puisqu'il faut que les valeurs restent affichées quelque soit la date du jour. Mais merci quand même à tulipe_4

U.Milité, peux-tu me donner des explications sur la formule utilisée (je ne veux pas recopier bêtement^^). J'ai juste un petit problème, sur le formulaire où j'ai transféré les formules, qui est plus complexe que l'Excel que j'avais mis en pièce jointe.

J'ai des dates qui se mettent en 00/01/00, pourtant les cases incriminées sont bien en format date. Est-ce que tu aurais une explication?

Merci encore ça va bien m'aider et c'est toujours bon à savoir

Bonne journée à tous,

Cordialement

JuSico

J'ai rien dit c'est tout bon, j'avais changé la matrice ^^

Bonjour,

Salut à tulipe_4 au passage,

JuSico a écrit :

J'ai rien dit c'est tout bon, j'avais changé la matrice ^^

Ce dernier message annule quelle partie du message précédent?


JuSico a écrit :

Il faut que les valeurs restent affichées quelque soit la date du jour. Mais merci quand même à tulipe_4

JuSico a écrit :

J'ai des dates qui se mettent en 00/01/00, pourtant les cases incriminées sont bien en format date. Est-ce que tu aurais une explication?

ou alors

JuSico a écrit :

Peux-tu me donner des explications sur la formule utilisée (je ne veux pas recopier bêtement^^)

La partie concernant les dates s'affichant en 00/01/00. J'ai résolu le problème.

Si tu pouvais m'expliquer un peu la formule ça serait top^^

Et petite question au passage: j'ai plusieurs onglets dans l'Excel Planning 2018. Est-ce que je peux avoir la fenêtre Planning 2018 avec le choix de tous les onglets à chaque fois que je copie/colle la formule?

Merci

Prenons la formule en A1:

JuSico a écrit :

Si tu pouvais m'expliquer un peu la formule ça serait top^^

La partie

SI('Planning 2018'!$A$2:$A$30>0;LIGNE('Planning 2018'!$A$2:$A$30))

permet de lister les n° des lignes pour lesquelles on trouve une valeur supérieure à 0, en colonne A. Dans le cas de la formule en A1, on obtient une matrice sous la forme:

{2;FAUX;FAUX;FAUX;FAUX;7;FAUX;FAUX;10;11;12;FAUX;14;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX}

PETITE.VALEUR donne, comme son nom l'indique, la plus petite valeur d'une série de données.

LIGNES($1:1) donnera le nombre de lignes dans la plage sélectionnée.

En copiant vers le bas, on aura LIGNES($1:2), puis LIGNES($1:3), etc. et donc les plus petites valeurs au rang 1, puis 2, 3 etc.

En les imbriquant toutes les trois, on obtient en A1 le plus petit n° de ligne de la matrice plus haut, soit 2. À la ligne suivante, le résultat sera 7, puis 10, etc.

La fonction INDEX ... je ne t'explique pas

Le SIERREUR éviterait l'affichage de messages d'erreurs éventuels (#NOMBRE!, #N/A, ...)

S'agissant de matrices, la formule devra être validée "matriciellement" (Ctrl+Shift+Enter)

Pour l'autre question, elle fera l'objet d'un autre message ... pour autant que tu l'explicites un peu plus (là, je n'ai rien compris!)

Parfait merci beaucoup je vais étudier ça!

Effectivement c'est un peu compliqué à expliquer:

J'ai un fichier Planning 2018 composé de plusieurs onglets. Lorsque je rentre la formule, et que je fais entrer, la fenêtre affiche le fichier où va se référer la formule si j'ai bien compris (donc le chemin d'accès allant directement au fichier Planning 2018). Jusque là tout est OK.

Je sélectionne ensuite via une autre fenêtre qui apparait le premier onglet par exemple. J'ai donc les valeurs pour le premier onglet.

Par contre, lorsque je recopie la formule vers le bas et que je veux changer d'onglet, tout est plus compliqué. Je voudrais sélectionner le deuxième onglet par exemple, tout comme je l'ai fait pour le premier.

Je t'ai fait une capture d'écran, ça sera peut être plus parlant:

Merci beaucoup en tout cas.

Bonne fin de journée

JuSico

16doc-aide-excel.docx (343.24 Ko)

bonjour

visiblement ce ne sont pas des onglets (feuilles) mais des classeurs différents

cordialement

Bonjour à tous,

Je ne m'étais pas replongé dans mon document, mes excuses pour le retard...

Est-ce que ce que j'ai demandé est réalisable (voir ci-dessous pour l'explication) ? Il ne me manque plus que ça pour que ça soit parfait

tulipe_4, ce sont bien des feuilles différentes dans le classeur Planning 2018 correspondant aux S1 S2 S3 S4... que l'on peut voir apparaître dans la capture d'écran.

Merci d'avance,

Bonne journée à vous

Cordialement

JuSico

Bonjour,

Ta demande n'était pas très claire la première fois et ... 40 jours plus tard, ce n'est pas mieux

"Planning 2018" était bien une feuille de ton classeur exemple, au départ et deviendrait, selon ta capture d'écran, un classeur nommé "Planning surgelé(s) 2018", lequel contiendrait des onglets (feuilles) nommés S01, S02, ...

La formule devait donc être adaptée à cette situation différente et non utilisée comme telle (si je comprends bien)

Quant à trouver un système qui permettrait de choisir une feuille chaque fois que tu colleras la formule ... Euh ... je ne vois pas de solution directement, mais ça risque d'être un peu fastidieux, non (surtout si les S01, etc. représentent les 52 semaines de l'année!?)

S'il s'agit de faire référence à la semaine correspondant au nombre en colonne A, on peut utiliser la fonction INDIRECT (mais celle-ci implique que le classeur source doit être ouvert simultanément! J'imagine que ce ne sera pas le cas?

Bonjour,

Oui effectivement Planning 2018 est un classeur comportant 52 feuilles, correspondant aux 52 semaines de l'année. S'il est possible il faudrait donc que je puisse copier la formule en sélectionnant la semaine.

Le planning peut être ouvert simultanément mais en lecture seule par contre... Et ça ne sera peut être pas pratique...

Je peux tout de même essayer^^

Merci en tout cas.

Bonne journée,

Cordialement,

JuSico

Re,

Ça risque de devenir "lourd"

... et avec ta seule capture d'écran pour support, je ne garantis pas qu'il n'y aura pas d'erreur! Essaie, en B4:

=SIERREUR(INDEX(INDIRECT("'[Planning surgelé 2018.xlsx]S"&TEXTE(A4;"00")&"'!A$1:A$30");PETITE.VALEUR(SI(INDIRECT("'[Planning surgelé 2018.xlsx]S"&TEXTE(A4;"00")&"'!$A$2:$A$30")>0;LIGNE(INDIRECT("'[Planning surgelé 2018.xlsx]S"&TEXTE(A4;"00")&"'!$A$2:$A$30")));NB.SI($A$4:$A4;A4)));"")

Toujours à valider avec la même combinaison de trois touches.

Je rappelle aussi que cette formule ne peut être copiée que vers le bas. Celle de la colonne voisine (dans ton exemple original) pouvait être copiée en bas et à droite.

Les formules afficheront des erreurs si le classeur source n'est pas ouvert.

On pourrait sans doute aussi créer les formules de cette colonne par macro, en "forçant" l'inscription du n° de semaine figurant en colonne A

Attention aux risques d'erreurs aussi, en montant des "usines à gaz"

Rechercher des sujets similaires à "valeurs correspondantes date"