Recherche v , date, BDlire

hedraz

XLDnaute Nouveau
Bonsoir à tous !

1) J'ai un fichier avec des dates en format jj.mm.aaaa et je souhaiterais extraire l'année et le mois dans deux colonnes différentes. J'ai converti ma colonne jj.mm.aaaa en date pour extraire l'année (avec =annee() ) et le mois (avec =mois() ) ; mais j'ai un message "valeur" qui s'affiche au lieu de l'année et du mois alors que j'ai le même format date dans les colonnes date et mois.

2) ensuite je veux faire une recherche(v) à partir des colonnes années,mois et une nature d'indice par exemple "bois" : selon l'année et le mois et la nature d'indice (bois) il faut trouver un indice correspondant : la aussi j'ai un message d'erreur :
=rechercheV(plages année+ mois+nature indice ;table d'indice; colonne4;FAUX)

je me pose la question d'utiliser une fonction BDLIRE car la valeur recherchée est fonction de l'année+ le mois + la nature de l'indice : d'où ma plage recherchée.

ça n'a pas l'air très clair comme ça... j'espère pouvoir être secouru!
merci à tous!
 

chris

XLDnaute Barbatruc
Re : Recherche v , date, BDlire

Re

Pour 2014 : j'ai mis 2014 en cellule K7 et la formule suivante en I10 et suivantes
Code:
=INDEX(INDIRECT(G10);EQUIV($K$7&F10;INDIRECT(G10&"[année]")&INDIRECT(G10&"[mois]");0);4)
à valider par CTRL Shift Entrée

La validation en matriciel sert à la concaténation : cela oblige Excel à concaténer chaque ligne avant de faire la recherche sinon cela donnerait une concaténation des colonnes, ce qui n'est pas possible.

Edit : coucou modeste :). Maintenant que les tableau d'indices sont cohérents (par rapport à l'exemple initial), c'est effectivement une autre solution qui évite le matriciel.
On pourrait aussi supprimer la répétition année et mois dans les tableaux d'indice...
 
Dernière édition:

hedraz

XLDnaute Nouveau
Re : Recherche v , date, BDlire

@Modeste : j'ai essayé la formule, ça marche très bien : par contre je n'ai pas compris la différence avec la formule de Chris en matriciel; cela évite les bugs et le moulinage?

j'ai essayé aussi la formule pour 2014, cela marche aussi ; si j'ai des N/A cela veut dire que je n'ai pas d'indices mensuel pour 2014 correspondant à l'indice mensuel de l'indice historique.
du coup je pensais faire une formule indiquant d'aller chercher l'indice 2014 du mois précédent :

=si(ESTNA(INDEX(INDIRECT(G19);EQUIV($K$7&F19;INDIRECT(G19&"[année]")&INDIRECT(G19&"[mois-1]");0);4))


que pensez-vous globalement de ma méthode, il y a plus simple et plus rapide ?


merci à vous
 

chris

XLDnaute Barbatruc
Re : Recherche v , date, BDlire

Re

La calcul non matriciel est plus rapide.

Pour ma part, comme proposé au post #5, je créerai un seul tableau d'indices avec
  • une colonne année
  • une colonne mois
  • une colonne par nature avec en dessous l'indice correspondant

Ce qui simplifierait encore les formules.

Pour 2014, on peut compliquer la formule pour prendre le dernier mois présent si le mois n'existe pas en 2014 (et non mois -1 car il en manque plusieurs) mais il serait peut-être plus simple d'opter pour une recopie, dans le tableau d'indices, du dernier mois connu avec une couleur ou une colonne supplémentaire pour repérer les indices estimés et non réels.
 
Dernière édition:

hedraz

XLDnaute Nouveau
Re : Recherche v , date, BDlire

Ah OK, il me semblait que pour faire des recherches il fallait créer des tableaux fonction du critère recherche.

Je n'arrive pas à schématiser ta solution du message #5

Du coup qu'est-ce qui ne marche pas dans ma formule mois-1?
Je fais une recopie manuelle avec un tri des N/A? je voulais automatiser la chose au cas où j'ai >100 N/A; c'est pas souhaitablel et/ou faisable ?

Merci







Re

La calcul non matriciel est plus rapide.

Pour ma part, comme proposé au post #5, je créerai un seul tableau d'indices avec
  • une colonne année
  • une colonne mois
  • une colonne par nature avec en dessous l'indice correspondant

Ce qui simplifierait encore les formules.

Pour 2014, on peut compliquer la formule pour prendre le dernier mois présent si le mois n'existe pas en 2014 (et non mois -1 car il en manque plusieurs) mais il serait peut-être plus simple d'opter pour une recopie, dans le tableau d'indices, du dernier mois connu avec une couleur ou une colonne supplémentaire pour repérer les indices estimés et non réels.
 

chris

XLDnaute Barbatruc
Re : Recherche v , date, BDlire

Re

Non c'est toujours INDEX EQUIV qui recherche. Le SI évite de chercher sur les lignes vides ou bien les lignes où tu as mis N/A comme nature d'indice.

Pour 2014 la formule tient compte du nombre de mois saisis dans les indices.
 

Discussions similaires

Réponses
21
Affichages
422

Statistiques des forums

Discussions
312 304
Messages
2 087 062
Membres
103 449
dernier inscrit
pulco41