J'ai un document excel utilisé comme base de donnée pour des instructions de travail. C'est plutot simple: les opérateurs choisissent le moule voulu dans une liste défilante et la feuille va chercher automatiquement les données dans une autre feuille. J'ai aussi une section image qui montre une photo du moule, de la pièce qu'il produit et de l'installation sur la presse. Avant j'utilisais la fonction DÉCALER pour aller chercher la bonne photo automatiquement dans la feuille contenant les photos, mais étant donné qu'elle contenanit plus de 500 photos, le fichier est devenu très volumineux et très lent.
Voilà ce que je cherche a faire: j'ai remplacé toutes les images par le lien et ai créer une fonction qui va automatiquement chercher les bons liens et les rammene dans la feuille. Maintenant, je voudrais pouvoir ouvrir ces liens avec un bouton. Étant donné qu'il y a 4 liens, il y aurait 4 boutons qui en ouvriraient chacun un.
Dans le fond, il me faudrait quelque chose de semblable à cela:
Code:
Workbooks.Open Filename:="R:\Dossier contenant toutes les images\img1.jpg"
mais qu'au lieu de contenir un lien, ça irait automatiquement chercher celui dans la cellule C56.
Aussi faudrait-il que l'image se ferme automatiquement après environ 25 minutes.
J'espère que c'était clair, et merci à l'avance de votre aide!
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Wow, merci de la reponse rapide!
Mais comme dit précédement, mes connaissances en VBA sont presque inexistantes. Serait-il possible de savoir comment integrer le code SVP? Aussi, comment je fais pour que le chemin d'accès et le nom du fichier soit pris automatiquement de la cellule C56?
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Lorsque tu dis que ImageX est "le nom d'un objet Image qui y existe", tu veux dire que c'est la nom de la forme sur laquelle je clique pour activer la macro? Si c'est bien cela, comment je fais pour trouver son nom?
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Je n'ai pas parlé de forme mais d'objet Image de la Boîte à outils Contrôles (même icone montagne + soleil (ou lune plutôt ?) que celui de la barre d'outils dessin qu'il ne faut pas prendre)
Une fois implanté en mode création, affichez la fenêtre de propriété, cliquez sur l'objet: c'est sa propriété Name.
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Merci! Une petite dernière chose: les images sont beaucoup plus grosses que l'objet Image, comment je fais pour qu'elles se redimensionnent automatiquement à la grosseur de l'objet Image?
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Pas de problème, c'est une propriété de l'objet image que vous devriez trouver facilement. Sinon je vous dirais. SizeMode je crois.
P.S. À mettre sur Zoom, je crois, aussi…
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Vous affectez à sa Picture une chaine vide = LoadPicture("")
Soit vous écrivez tout ça dans un module ordinaire et vous affectez les macros à des boutons de formulaires (ancienne pratique),
soit vous écrivez dans le module de la feuille des procédures évènements (…_Click ici) pour des boutons de commande (même boîte à outils, nouvelle pratique).
À +
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Parfait, merci!
Encore une derniere petite chose (je sais, ça fait plusieurs fois que je dis ça), mais parfois, j'ai des liens qui mènent a des images inexistantes (j'ai l'intention de les ajouter plus tard). Lorsque je clique sur un bouton menant a un lien invalide, je reçois un message d'erreur disant "Erreur d'exécution '76': Chemin d'accès introuvable". Que dois-je faire si j'aimerais qu'à la place, une fenêtre apparaisse et dise "Image introuvable"?
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
VB:
On Error Resume Next
Feuil1.ImageX.Picture = LoadPicture(Feuil1.[C56].Value)
If Err Then MsgBox "Image introuvable.", VbExclamation, "Appel image"
On Error Goto 0
Re : [VBA] Ouvrir lien hypertexte grâce a une macro
Bonjour.
Mais ne vous faites donc pas tant de mal !
Qu'y a-t-il de stupide à avoir su appliquer mes recommandations irréprochablement, alors que vous annonciez :
Ce n'est pas mal du tout !
Juste une dernière recommandation: le curseur texte étant sur un élément de programmation, faites un usage fréquent de la touche F1.
Cordialement.
Bonjour.
Mais ne vous faites donc pas tant de mal !
Qu'y a-t-il de stupide à avoir su appliquer mes recommandations irréprochablement, alors que vous annonciez :