[Déplacé .Net --> VBA] Afficher des lignes à l'aide de menu déroulant
TyJackh
Messages postés2Date d'inscriptionlundi 21 décembre 2009StatutMembreDernière intervention21 décembre 2009
-
21 déc. 2009 à 16:40
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
21 déc. 2009 à 17:19
Bonjour
Je souhaiterai écrire une macro sous excel afin de pouvoir afficher des ligns d'une bases de données sélectionner par deux critères par menu déroulant.
Ex à partir d'une bas de données:
Elt Critère 1 Critère 2
Elt 1 B E
Elt 2 A E
ELt 3 B F
je choisi sur un premier menu déroulant le critère B, sur un second menu déroulant le critère F et cela m'affiche sur une feuille 2 la ligne correspondant à l'élément 3.
Je pense que cela doit pas etre très compliqué avec quelques lignes de code. Mais à vrai dire la programmation n'est pas du tout mon domaine.
Quelqu'un pourrait-il m'aider ?
Merci d'avance
A voir également:
[Déplacé .Net --> VBA] Afficher des lignes à l'aide de menu déroulant
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 déc. 2009 à 17:19
Salut
Base de données :
- De quel type ?
- As-tu déjà établi une connexion ?
- As-tu déjà créé des requètes de recherche ?
Si ta base de données est une feuille Excel, il te suffit de faire :
-1- Une recherche du premier critère : Un enregistrement de macro pendant que tu le fais à la main devrait te donner les bases
-2- Une fois que tu es sur une ligne, tu testes ensuite les cellules juste à côté (avec l'aide de .Offset par exemple) pour vérifer si elle contient aussi tous les critères recherchés.
Si Non, tu continues la recherche 1
Si oui, c'est une des réponses. Tu repiques ce dont tu as besoin pour ton affichage. Si besoin, tu peux continuer ta recherche 1 s'il vérifier s'il existe d'autres réponses dans la base.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)