Problèmes pour fussioner deux tableaux (fonction recherchev)

  • Initiateur de la discussion Initiateur de la discussion espinozr
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

espinozr

XLDnaute Nouveau
Bonjour,

J’ai deux tableaux excel que je voudrais convertir en un seul tableau. Mon problème est que les données du deuxième tableau ne correspondent pas aux mêmes dates, donc il me faut faire une recherche en fonction du la colonne E (colonne appelé FW).

Ce que je veux faire :

1) Fixer une date à partir de laquelle je prends les données du deuxième tableau (cellule H3).
2) Jusqu’à la date affichée sur la cellule H3, je prends les valeurs du tableau 1. Jusqu’au là, tout va bien.
3) Une fois arrivés à la date affichée sur la cellule H3, il me faut prendre la dernière valeur du FW (colonne E), et faire une recherche sur le tableau 2 et une fois cette valeur est trouvée, compléter mon tableau final avec tous les données du tableau 2 à partir de cette date là.

Problème ? La fonction « recherchev » trouve toujours la valeur inférieure, et donc il trouve toujours la même valeur. Ce qu’il me faudrait est d’arriver à décaler les lignes et copier tout le tableau à partir du FW trouvé jusqu’à la fin.

Attaché le fichier…

Merci!
 

Pièces jointes

Re : Problèmes pour fussioner deux tableaux (fonction recherchev)

Bonjour,

Je pense que le problème vient de la formule SI et du fait que la valeur 0.6003 n'apparait pas la table 2.
Voici ma proposition de formule (test sur la date, si vrai recherche dans table 1, si faux recherche dans table 2) :

Code:
=SI($A33<$H$3;RECHERCHEV($A33;$A$4:$F$25;2;FAUX);RECHERCHEV($A33;$L$4:$Q$25;2;FAUX))

Je mets le fichier en pièce jointe.
A plus
 

Pièces jointes

Re : Problèmes pour fussioner deux tableaux (fonction recherchev)

Bonjour,

Je pense que le problème vient de la formule SI et du fait que la valeur 0.6003 n'apparait pas la table 2.
Voici ma proposition de formule (test sur la date, si vrai recherche dans table 1, si faux recherche dans table 2) :

Code:
=SI($A33<$H$3;RECHERCHEV($A33;$A$4:$F$25;2;FAUX);RECHERCHEV($A33;$L$4:$Q$25;2;FAUX))

Je mets le fichier en pièce jointe.
A plus

Merci de votre réponse, mais ce n’est pas exactement ce que je recherchais.

Le problème est un peu plus complexe. Je ne souhaite pas compléter le tableau final avec les données du Tableau 2, à partir de la dernière date, mais à partir de la dernière valeur du FW obtenue du Tableau 1 (celui du gauche). En fait, ce qu’il faudrait c'est qu’à partir de la dernière valeur du Tableau 1 (0.0603 pour le fichier attaché), la formule doit chercher la valeur la plus proche dans le Tableau 2 et ensuite compléter le Tableau final avec ces valeurs.

Dans le fichier ci-joint vous trouverez un tableau avec les résultats souhaités (fait à la main). J’ai mis un code couleur pour que ce soit plus clair.

Merci!
 

Pièces jointes

Re : Problèmes pour fussioner deux tableaux (fonction recherchev)

Bonjour,
A essayer :

en E33 = E4
en E34 : =SI(A34>=$H$3;INDEX($M$4:$M$25;EQUIV($E33;$M$4:$M$25;1)+1);E5)
Cordialement

Le problème avec votre formule, ce que la valeur de E4 est une date qui va changer souvent, donc il me faudra avoir une formule le plus automatique possible, qui puisse servir indépendamment de la date rentrée sur E4.
 
Re : Problèmes pour fussioner deux tableaux (fonction recherchev)

Re,

J'ai bien une formule qui fonctionne mais uniquement tant que la colonne A du tableau fusionné n'est pas vide :

Code:
=SI($A33<$H$3;RECHERCHEV($A33;$A$4:$F$25;2;FAUX);SI(NB.SI($N$4:$N$25;$E32)>0;INDEX($N$4:$R$25;EQUIV($E32;$N$4:$N$25)+1;2);RECHERCHEV(TRONQUE($E32;2);$M$4:$R$25;3;VRAI)))

Je vous remets le fichier en pièce jointe.

A plus
 

Pièces jointes

Re : Problèmes pour fussioner deux tableaux (fonction recherchev)

Re,

J'ai bien une formule qui fonctionne mais uniquement tant que la colonne A du tableau fusionné n'est pas vide :

Code:
=SI($A33<$H$3;RECHERCHEV($A33;$A$4:$F$25;2;FAUX);SI(NB.SI($N$4:$N$25;$E32)>0;INDEX($N$4:$R$25;EQUIV($E32;$N$4:$N$25)+1;2);RECHERCHEV(TRONQUE($E32;2);$M$4:$R$25;3;VRAI)))

Je vous remets le fichier en pièce jointe.

A plus

Ok, ça marche! Merci beaucoup, j'ai mis un bon moment pour comprendre la formule...

Si je comprends bien, il faudra rajouter une colonne dans le tableau 2 avec FW bis et la fonction TRONQUE, est-ce correct?
Encore merci.
 
Re : Problèmes pour fussioner deux tableaux (fonction recherchev)

Re,

Oui, j'ai été obligé d'ajouter une colonne pour rechercher les valeurs qui ne sont pas dans la liste.
La fonction TRONQUE me permet de rechercher ces valeurs (ou du moins leur valeur approchée).
ARRONDI est peut être plus adapté, je n'ai pas regardé : j'ai juste cherché pour avoir une valeur sur 2 décimales pour pouvoir faire la recherche.

Il y a peut être plus simple pour y arriver mais je n'ai pas trouvé.

A plus
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
215
Réponses
3
Affichages
152
Réponses
1
Affichages
133
Réponses
13
Affichages
238
Retour