elect31
XLDnaute Nouveau
Bonjour à tous
Ce que je voudrais faire.
Un userform contenant un controle image(nommé ImageAPSA) et 4 optionbutton.
Au clic d'un des optbutton, je voudrais importer une image (gif) dans le controle image. Chaque optbutton importerait une image différente. Ces images sont sous forme de fichiers à la racine du fichier Xl.
Ce que j'arrive à faire (mais je ne sais pas si c'est le meilleur moyen)
Grace au code suivant, j'importe mes images automatiquement dans une feuille du classeur :
J'ai essayé le code suivant sans succès:
Je sais bien que l'on peut importer directement l'image dans le userform avec ce code, mais il ne me va pas car le nom de l'image est en dur:
Je pensais qu'il était préférable de passer par la feuille car je pouvais comme cela utiliser les références des cellules où étaient déposées les images par ma macro ImportImages(),ou le nom de l'image dans la feuille.
Une autre astuce que j'avais envisagée,
1 importer dans ma feuille avec le code ci-dessus
2 Créer une étape supplémentaire en passant mon image dans un controle image dans la feuille
3 lier ce controle image de la feuille au controle image du userform par le biais des optbutton.
Merci de vos éclairages
Ce que je voudrais faire.
Un userform contenant un controle image(nommé ImageAPSA) et 4 optionbutton.
Au clic d'un des optbutton, je voudrais importer une image (gif) dans le controle image. Chaque optbutton importerait une image différente. Ces images sont sous forme de fichiers à la racine du fichier Xl.
Ce que j'arrive à faire (mais je ne sais pas si c'est le meilleur moyen)
Grace au code suivant, j'importe mes images automatiquement dans une feuille du classeur :
Mais je ne sais pas faire la suite, importer de la feuille du classeur dans le ctrl image de mon userform.Sub ImportImages()
ChDir ActiveWorkbook.Path
Range("B1").Select
Do While ActiveCell.Offset(0, -1) <> ""
nf = ActiveCell.Offset(0, -1) & ".gif"
Set monimage = ActiveSheet.Pictures.Insert(nf)
ActiveCell.EntireRow.RowHeight = monimage.Height + 0
ActiveCell.Offset(1, 0).Select
Loop
End Sub
J'ai essayé le code suivant sans succès:
ImageAPSA.Picture = Sheets(1).Image1.Picture
Je sais bien que l'on peut importer directement l'image dans le userform avec ce code, mais il ne me va pas car le nom de l'image est en dur:
ImageAPSA.Picture = LoadPicture("K:\PHOTO CLASSE\Transp_bad.gif")
Je pensais qu'il était préférable de passer par la feuille car je pouvais comme cela utiliser les références des cellules où étaient déposées les images par ma macro ImportImages(),ou le nom de l'image dans la feuille.
Une autre astuce que j'avais envisagée,
1 importer dans ma feuille avec le code ci-dessus
2 Créer une étape supplémentaire en passant mon image dans un controle image dans la feuille
3 lier ce controle image de la feuille au controle image du userform par le biais des optbutton.
Ce dernier code fonctionne très bien mais il me manque l'étape 2 (en VBA bien sur)ImageAPSA.Picture = Sheets(1).Image22.Picture
Merci de vos éclairages
Dernière édition: