2010-10-25 25 views
0

J'ai un formulaire avec un couple de zones de liste déroulante. La première liste déroulante ajoute des éléments basés sur chaque ligne d'une feuille Excel. Ceci lit essentiellement chaque cellule de la colonne spécifiée jusqu'à ce qu'elle touche une cellule vide. Ensuite, il prend la valeur de chaque cellule et l'ajoute en tant qu'éléments à la première zone de liste déroulante. Maintenant, ce que je veux que le code fasse est de prendre l'élément sélectionné de cette zone de liste déroulante et de rechercher une correspondance dans une autre feuille de calcul. Quand il trouve une cellule qui correspond, il devrait ramasser la valeur de la colonne B de la même ligne que la correspondance. Il peut y avoir plus d'une correspondance, donc chaque fois qu'il trouve une correspondance, je veux récupérer la valeur de la colonne B de la même ligne et ajouter CELA comme éléments dans la deuxième liste déroulante.Vb.net - Recherche fichier Excel pour les valeurs

Quelle est la meilleure façon d'y parvenir?

+0

vous pouvez créer un tableau, puis suivre la boucle ci-dessus; Au lieu d'ajouter à la zone de liste déroulante, ajoutez-le au tableau et à la fin, ajoutez le tableau à la liste déroulante. –

Répondre

2

Il semble que vous ayez juste besoin d'utiliser les fonctions VLookup ou HLookup dans Excel. ils fonctionnent de la même façon que ce que vous cherchez à faire sans codage, juste des formules.

+0

Ok, donc je peux réellement utiliser les fonctions Excel au sein de vb.net. C'est vraiment cool, je pense que cela semble plus logique :) –

+0

Eh bien, ce n'est pas exactement ce que je voulais dire, mais oui, vous pouvez utiliser les fonctions Excel de VB.net, vous auriez juste à écrire la formule dans une cellule, recalc, et lire la valeur de la cellule. Mais si vous pouviez le faire en grande partie via des formules Excel et des tables de recherche, cela pourrait être l'approche la plus simple. Il n'y a pas vraiment de contexte sur le type d'application que vous êtes en train de construire pour savoir ce qui serait le mieux. – DarinH