Aide sur Excel en Visualbasic [Résolu]

Signaler
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011
-
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011
-
Bonjour à Tous !
Débutant en visualbasic sur excel,
J'aurais besoin d'une petite aide à programmer sur Excel un userform qui comporterait une combobox avec 4 ou 5 éléments figés, et à chaque élément serait associer une image différente qui lorsque l'élément sera sélectionner dans la combo l'image devra se coller sur une ou plusieurs feuil de calcul du fichiers.
Je sais programmer la userform et la combo avec les éléments qui y sont joint mais pour associer l'image et la copier sur une ou plusieur feuille de calcul je ne sais pas comment m'y prendre !

Désolé j'avais fait un petit fichier excel explicatif mais je ne sais pas comment le joindre à mon message

Merci à Tous de votre aide

11 réponses

Messages postés
7237
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
118
Bonjour,
Dans l'exemple que je te donne, il faut que tes fichiers image soient dans un dossier avec le classeur. Bien respecter la casse de tes fichiers image avec ceux inscrits dans le combo

Private Sub ComboBox1_Click()
On Error Resume Next
Dim img As String
img = ComboBox1.Value
Feuil1.Image1.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
End Sub


A adapter pour le nom des Feuilles, des ComboBox et des Image.Picture

@+Le Pivert
Messages postés
7237
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
118
Regarde sur ce site, il y a un exemple à télécharger

http://dj.joss.free.fr/combo.htm
Messages postés
7237
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
118
Oui c'est possible. Il faut bien suivre la procédure:
Feuille1, ComboBox1, Image1.Picture
Code:
Private Sub ComboBox1_Click()
On Error Resume Next
Dim img As String
img = ComboBox1.Value
 Feuil2.ComboBox1.ListIndex = ComboBox1.ListIndex 'on nomme la feuille2 car nous sommes sur la feuille1
Image1.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
End Sub

Feuille2, ComboBox1, Image1.Picture
Code:
Private Sub ComboBox1_Change()
On Error Resume Next
Dim img As String
img = ComboBox1.Value
Image1.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
End Sub

Maintenant c'est à toi de remplir les ComboBox de façon a avoir les images correspondantes.
Ainsi de suite pour les autres feuilles.
Le Pivert
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011

Personne pour m'aider ?
Merci
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011

Merci beaucoup pour votre aide je vais essayer cela dés que possible et vous tiens au courant !
Amicalement
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011

Private Sub ComboBox1_Click()
On Error Resume Next
Dim img As String
img = ComboBox1.Value
Feuil1.Image1.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
End Sub

Problème j'ai une erreur à chaque fois sur Image1 ... j'ai essayé en mettant le nom de mon image qui est dans le même répertoire ....
Mes photos s'appelle FNO et PGA

Dois je écrire
Feuil1.FNO.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
Mais ça marche pas non plus !!!

Merci des infos
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011

Cool merci bien cela fonctionne enfin !!!

Petite question supplémentaire si à l'item de la combobox je veux associer 2 images diférentes et à copier à deux endroits différents cela peut il être possible ?

Merci encore
Messages postés
7237
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
118
Bien sur, c'est simple:

Private Sub ComboBox1_Click()
On Error Resume Next
Dim img As String
img = ComboBox1.Value
Feuil1.Image1.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
Feuil2.Image1.Picture = LoadPicture(ActiveWorkbook.Path & "" & img & ".jpg")
End Sub


Adapter feuille et Image.Picture
Le Pivert
Messages postés
7237
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
26 janvier 2021
118
J'ai répondu un peu vite. Tu ne peux pas associer 2 images différentes.Car c'est l'image correspondant au nom de l'item sélectionné qui sera affiché.
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011

Merci de toutes les infos cela m'aide bien !

Mais alors comment faire pour associer deux ou trois images à un item d'une combo ?
Dois je passer par des combo en cascade ? Je m'explique, la combo1 présente les Items FNO, PGA, FLU et j'associe les images qui vont avec et ensuite dans un deuxième Combo les items seraient FNO1, PGA1 et FLU1 avec leurs propres images. Mais lorsque je sélectionne l'item FNO cela sélectionne l'item FNO1 dans la Combo2 ainsi de suite ?
J'espère mettre fait comprendre ? Donc comment relier l'Item de la combo1 à l'item de la combo2 ?

Merci d'avance
Messages postés
7
Date d'inscription
vendredi 18 février 2011
Statut
Membre
Dernière intervention
22 février 2011

Génial Merci beaucoup !! J'ai adapté un peu car mes combo sont dans un uerform ... au final ça fonctionne !!
Merci