Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

condition pour list dans combobox

  • Initiateur de la discussion Initiateur de la discussion zouille
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Z

zouille

Guest
salut a tous
voila , j'ai besoin de votre aide
dans mon projet , j'ai un userform 'plan' qui contient des boutons et j'aimerais qu'en cliquant sur ces boutons , l'autre userform s'ouvre et que le combobox qui est dedans contienne certaine infos ( fonction du bouton cliquer )

exemple:
*userform1 : je clique sur le bouton 'E220'
*(ouverture du userform2)
*j'aimerais que le combobox du userform 2 contienne les elements de la collone b ( de ma feuille excel) à condition que dans la colone a il y ai escrit E220
* et de meme pour tous les autre boutons

ci joint mon fichier avec le code de depart
merci a vous [file name=essai_20060414181405.zip size=14229]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/essai_20060414181405.zip[/file]
 

Pièces jointes

MichelXld écrit:

salut et merci ,donc pour l'expliquation:
si je clique sur le bouton E220 j'aimerais avoir dans userform info :
-dans le combobox : b2 et b3 (car a2 et a3 = e220)
-dans le textbox 1 : c2 si je selectionne b2 dans combobox ou c3 si je selectionne b3
textbox 3 et 4 : j'aimerais avoir d3 et e3 qqsoit le choix du combobox ( des l'ouverture du userform)

et idem pour un autre bouton : si e218
combob : b4
textbox1 : c4
textbox 2 et 3 : d3 e3

merci a toi
 
bonjour Zouille , Bebere et JP

tu peux tester ce nouveau classeur


remarques :


j'ai suivi tes indications ,
j'aimerais avoir d3 et e3 qqsoit le choix du combobox
, mais ainsi tous les travaux à effectuer ne sont pas listés .


nomUserForm.Hide , sert à masquer une UserForm

il faut utiliser Unload Me pour fermer un UserForm



cher Bebere , tu trouveras quelques exemples dans la wiki page 8 (chapitre Visual Basic Editor)

https://www.excel-downloads.com/threads/ref-wiki-page-8-de-michelxld.92376/


bonne journée
MichelXld
[file name=Essaiv5.zip size=18660]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Essaiv5.zip[/file]

Message édité par: michelxld, à: 16/04/2006 06:36
 

Pièces jointes

salut
c'est super , c'est exactement ce que je cherchais .
En ce qui concenre les travaux, il sagit des travaux a faire dans le local et non sur la machine , d'ou independant du choix du combobox ( mauvaise explication de ma part)

j'aurais qq petite questin afin de finaliser le projet.

1-si je rajoute 3 boutons sous mon combobox a partir desquelles j'ouvrirais des photos correspondant au choix combobox est ce possible , meme si plusieur machine dans meme local ( comme e220) :ce code et a mettre dans le modul de classe? ou Faut il que je cree des liens hypertexte dans les collone f - g -h et faire appel a partir du userform ? A tu une autre solution?

2-A l'ouverture du userform info , quelle valeur fut il changer pour que le combobox affiche directement le premier choix de ca liste

Encore merci a toi
 
rebonjour


pour la 1ere question , je ne suis pas sur d'avoir bien compris , mais tu peux tester cette adaptation
le chemin des images est stocké dans les colonnes F , G et H de la feuille '2eme faux-pont'


pour la 2eme quetion

il faut ajouter

info.ComboBox1.ListIndex = 0

dans le module de classe



bonne journée
MichelXld [file name=Essaiv6.zip size=20975]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Essaiv6.zip[/file]
 

Pièces jointes

ok
encore merci a toi , donc pour les photos , je souhaite ouvrir la photo ( dans une msgbox ou userform ou zone image ou apercu windows : le plus simple) en cliquant sur le bouton voulu.
(Photos stoqué dans dossier image)

la photo auras le nom de la collone A ( plus simple pour le code je pense).

pour E220 ---> e220-1.jpg / e220-2.jpg / e220-3.jpg
et idem pour le reste, donc dependant du choix dans combobox.

merci a toi
 
j'avais oublié , qd je quitte le projet , j'ai un msg erreur:
erreur execution 380
Impossible de definir la propriete Listindex.Valeur de propriete non valide

a ce niveau : ( dans le modul de classe)
info.ComboBox1.ListIndex = 0

merci
 
salut
c'est encore moi
j'ai essayer en supprimant cette ligne , il n'y a plus l'erreur par contre l'action sur le bouton 'quitter' du USF plan, le ferme bien mais ouvre aussi le userform info.
 
rebonjour

Oouuppss... tu as raison , le bouton de fermeture ne doit pas etre pris en compte dans la classe ...



tu peux adapter a procedure UserForm_Initialize :


For Each Obj In Me.Controls

If TypeOf Obj Is msforms.CommandButton Then

If Not Obj.Object.Caption = 'QUITTER' Then
Set Cl = New Classe1
Set Cl.CmdB = Obj
Collect.Add Cl
End If

End If

Next Obj



bon apres midi
MichelXld

Message édité par: michelxld, à: 16/04/2006 15:19
 
MichelXld écrit:

ok merci , mais le probleme est que tout le code depend de la valeur c = cmdb.caption alors si je modifie , ca ne fonctionnera plus
tu veux que je remplace ce code par ton precedent ou que je l'incruste dedans .

Est ce que pour l'ouverture des images , a partir des boutons sous le combobox c'est possible ? est ce ds le modul de classe ou uniquement dans le userform info? car je doit toujours concerver en memoire le nom du bouton car = nom de la photo( voir explication dans ma reponse precedente)

merci a toi et de ton temps , ca me permet d'apprendre un peu vite , mais j'essaie de comprendre

merci
 
pour la photo voila ce que j'essaie de faire
Code:
Private Sub UserForm_Initialize()
'photo.Caption= nom de la machine choisi ds combobox
Image1.AutoSize = True
Image1.Picture = LoadPicture('C:\\e220-1.JPG') 'chargement de la photo bouton.caption-1.jpg
photo.Height = Image1.Height
photo.Width = Image1.Width
End Sub

mais j'ai essayer de reprendre la valeur c mais en fait je pense qu'il faut refaire un modul de classe pour ce type d'action car
pour chaque choix dans le combobox , il yaura 1 a 3 photos disponible

merci a toi
 
rebonjour

mais le probleme est que tout le code depend de la valeur c = cmdb.caption alors si je modifie , ca ne fonctionnera plus

ce n'est qu'un exemple . rien ne t'empeche de prendre un autre parametre dans ton projet .


Est ce que pour l'ouverture des images , a partir des boutons sous le combobox c'est possible ? est ce ds le modul de classe ou uniquement dans le userform info?


Le classeur ci joint regroupe les modifications suite à tes differentes remarques , dont l'ouverture des images depuis les 3 boutons
Le chemin des images est stocké dans les colonnes masquées du ComboBox lorsque tu cliques sur un des boutons ( E220 , E218 , E217 ...) , juste avant d'afficher l'UserForm 'info'

'---- chemin images dans colonnes F à H
info.ComboBox1.List(info.ComboBox1.ListCount - 1, 2) = C.Offset(0, 5) 'colonne F
info.ComboBox1.List(info.ComboBox1.ListCount - 1, 3) = C.Offset(0, 6) 'colonne G
info.ComboBox1.List(info.ComboBox1.ListCount - 1, 4) = C.Offset(0, 7) 'colonne H
'---------------------------------------



il te restera à adapter le chemin des images dans les colonnes F , G et H



bon apres midi
MichelXld [file name=Essaiv7.zip size=24997]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Essaiv7.zip[/file]
 

Pièces jointes

ok
merci a toi , c'est ce que je voulais.
Par contre , si je veux ouvrir ces images dans un USF contenant une zone image.(car la l'image s'ouvre dans un explorateur internet)
celle ci:

Private Sub UserForm_Initialize()
Image1.AutoSize = True
Image1.Picture = LoadPicture........
USFphoto.Height = Image1.Height
USFphoto.Width = Image1.Width
End Sub

Comment dire aux 3 boutons d'ouvrir USFphoto (facil) mais avec tel image dedans (moins facil pour moi).

Sinon , est il possible de ne pas ecrir les chemins des image ds les collones F G H mais lie automatiquement les 3 boutons aux photo sachant quelles seront toutes ds un dossier 'photo', et dont les noms seront ceux du bouton sur le plan.
ex :
1-click sur bouton E220 sur le plan.
2-ouverture du USF info
3-click sur un des trois bouton image , ouvertur d'un USFphoto avec dedans E220-1.jpg ou E220-2.JPG ou E220-3.jpg

donc nom des photo =
nomdulocal-1.jpg soit collonne A
donc si j'ai bien compris , un rapport avec :
info.ComboBox1.List(info.ComboBox1.ListCount - 1, 1) = C.Offset(0, 2)
j'ai du mal avec (x,Y) et l'equivalent dans la feuille de calcul

ps:Mes 2 remarques ne sont que des details , mais ca me permet de comprendre mieux VBA car plus j'avance et plus je vois les possibilité de VBA

En tout cas merci enormement pour ton aide car sans a , je serait encore au point de depart
 
bon j'ai essayer en utilisant les valeurs du combobox mais rien a faire.
mon probleme est de pouvoir dire que l'action sur le bouton image 1 (sur 3)ouvre la photo 1 dont le nom est celui de la collone A du combobox ( mais collone B uniquement visible dans combobox)donc
ListBox1.List(1, 1)
d'ou
image.USFphoto= LoadPicture (c:\\image\\ListBox1.List(1, 1)-1.jpg)

mais evidement ca ne marche pas car il ne prend pas en compte si c'est le bouton image 1 2 ou 3.

merci a vous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…