Bonsoir,
Encore une fois, je sèche après plusieurs heures de recherches...
Tout est dans le titre :
J'ai un tableau à 2 dimensions, pour lequel j'ai créé des en-tête qui me permettent de chercher l'index correspondant à la variable à alimenter.
La première dimension est fixe, et la 2e est variable.
Mon tableau se nomme TBP_HL et ressemble à ça :
Type _______ Biere_______ Vin _______ Champagne _______ etc...
DA_Sortie
DA_Entree
DD_Sortie
DD_Entree
J'ai trouvé cette formule, qui fonctionne et me retourne bien le numéro de l'index ("colonne") de la 1ère ligne :
Par contre, quand j'essaie de faire la même, mais pour rechercher chaque ligne dans la 1ere colonne, j'ai une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim VL_Type_article_en_cours as String VL_Type_article_en_cours = "Biere" ' C'est véridique et ça tombe bien !! :-) VL_Index_type_article_en_cours = WorksheetFunction.Match(VL_Type_article_en_cours, WorksheetFunction.Index(TBP_HL, 1), 0) - 1
Je suis conscient qu'avec la même formule, je ne peux pas rechercher un coup dans une ligne, un coup dans une colonne ! (Encore que certaines fonctions savent le faire)
Code : Sélectionner tout - Visualiser dans une fenêtre à part VL_Index_type_mvt_en_cours = WorksheetFunction.Match(VL_Type_mvt_en_cours, WorksheetFunction.Index(TBP_HL, 1), 0) - 1
Mais je me dis qu'il doit bien y avoir un moyen plus simple, que de faire :
Merci d'avance pour vos idées
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 For I_type_mvt = 0 To UBound(TBP_HL) If TBP_HL(I_type_mvt, 0) = VL_Type_mvt_en_cours Then VL_Index_type_mvt_en_cours = I_type_mvt End If Next I_type_mvt![]()
Partager