Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2794 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  VBA- lisbox-user form

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

VBA- lisbox-user form

n°2146584
Emmeline1
Posté le 20-06-2012 à 15:18:21  profilanswer
 

Bonjour à tous, :pt1cable:  
 
Je dois réaliser une base de données et je découvre l'outil VBA, je suis débutante de chez débutante
 
Je suis bloquée car j'ai un classeur, constitué de 11 feuilles, j'ai ajouté une feuille "accueil" sur laquelle je souhaite mettre une liste déroulante pour que l'utilisateur choisisse la feuille sur laquelle il veut se rendre.
 
Je suis donc passée par userform où j'ai insérer une listbox mais je ne sais pas comment faire ce lien.
 
Imaginons que j'ai une feuille qui s'appelle: "arbres", une autre "fleurs" et une autre "fruit", comment fait-on pour avoir une list box qui proposerait ces 3 noms et redirigerait sur la feuille adaptée?
 
Ma question peut vous sembler basique mais je vous serai reconnaissante si vous me répondez   :)

mood
Publicité
Posté le 20-06-2012 à 15:18:21  profilanswer
 

n°2146591
JBARBE
Posté le 20-06-2012 à 16:30:48  profilanswer
 

Bonjour,
 
Voici un exemple avec les feuilles que vous citez et d'autres supplémentaires !
 
Il suffira d'adapter les noms de chaque feuille ( 11 ) en respectant impérativement l'ordre chronologique, afin de faire fonctionner la macro correctement  !
 
 
http://cjoint.com/?BFuqSHIwT6j


Message édité par JBARBE le 20-06-2012 à 16:57:42
n°2146599
Emmeline1
Posté le 20-06-2012 à 18:34:47  profilanswer
 

Merci beaucoup pour votre réponse, je comprend mieux!
Seulement j'ai une petite question comment avez vous fait pour que dans la case repère s'inscrive le numéro correspondant à l'ordre de la liste. i.e. pour que lorsqu'on choisit B par exemple, repère = 5, j'imagine que c'est à partir de la fonction ligne mais il faut rajouter une condition if du style if choix du bouton= B; then repère = ligne(B)+3;  
comment créer ce lien entre la liste déroulante et cette formule excel?

n°2146600
JBARBE
Posté le 20-06-2012 à 20:10:05  profilanswer
 

Clic droit sur la liste déroulante > format de contrôle > contrôle :
 
Plage d'entrée = D4 : D15
 
Cellule liée = E4
 
La boucle de la macro commence par 1 jusqu'à 100
 
Dim i As Integer ' Variable i
 
For i = 1 To 100 ' début boucle
 
 If i > 11 Then Exit Sub ' si i dépasse 11( feuilles) ( fin de la boucle)
 
 If Range("repere" ) = i Then ' la cellule "repere" commence par 1 qui s'affiche automatiquement( donc la premiére feuille "Acceuil" )
 
  Sheets(i + 1).Select ' pour la premiére feuille aprés Acceuil il faut +1
 
Exit For 'fin de la boucle si la feuille est trouvée
 
 End If ' fin de la condition
 
 Next i ' fin boucle aprés 100

n°2146626
Emmeline1
Posté le 21-06-2012 à 09:55:23  profilanswer
 

Je vous remercie infiniment!
Bonne journée,
Emmeline

n°2146639
kiki29
Posté le 21-06-2012 à 12:19:28  profilanswer
 

Salut, à titre de curiosité une autre approche via des hyperliens sur http://cjoint.com/?3FvmrEfVtbT , embryon à adapter au contexte


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
n°2147276
Emmeline1
Posté le 27-06-2012 à 09:37:15  profilanswer
 

J'ai vu le lien trop tard, il n'est plus activé...mais merci!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  VBA- lisbox-user form

 

Sujets relatifs
[VBA / Excel] supprimer une ligne sur deux[VBA / Excel] Modéliser dette dynamiquement
[VBA] Enregistrement de valeurs dans un fichier texteVBA/EXCEL
VBa : Dédoublonnage (Access 2007)Problème d'accès dll VBA/Excel
lancer une application en VBA depuis ExcelVBA Enregistrement de données
Macro VBA sur catia / Contrainte entre 2 plans[C# .net] Navigation vers un TAB précis d'un FORM.
Plus de sujets relatifs à : VBA- lisbox-user form


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR