Excel ouvrir un fichier selon la cellule active

Fermé
Ofanim - 11 mars 2017 à 16:05
 Ofanim - 11 mars 2017 à 18:17
Bonjour,

Je vous sollicite car je n'arrive pas à m'en sortir avec Excel 2010.

Je dois travailler avec une liste de données.
Ces données sont importées sous forme de tableau (il s'agit d'une liste d'aéroports avec quelques infos)
Chaque aéroport possède un code OACI (4 lettres) qui lui est propre.
Le but est que lorsque je clique sur le-dit code cela m'ouvre un fichier JPG dans Excel. Bien entendu les images seront toutes dans le même dossier.
Je possède déjà la vba pour faire apparaître une image dans une cellule prévue à cet effet mais bien entendu cela ne marche qu'avec un chemin.

Il faudrait donc faire une sorte d'appel de fichier.

Exemple:
Je clique sur le code OACI AAAA il faudrait que cela ouvre le fichier AAAA.jpg
Si je choisis PACA il faudrait que cela ouvre PACA.jpg
Il faudrait donc une macro qui permette, à partir d'une cellule active, ouvrir le fichier X/perso/images/AAAA.jpg
Ou bien X/perso/images/PACA.jpg

Si vous avez besoin de plus d'informations je reste à votre disposition.

Bien cordialement
A voir également:

5 réponses

via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 704
11 mars 2017 à 16:28
Bonjour

Essaie quelque chose comme ceci, code à mettre dans le worksheet de la feuille contenant le tableau :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <> 2 Then Exit Sub 'si double-clic n'est pas en colonne 2 sortie A ADAPTER
chemin = "X/perso/images/" & Target.Value & ".JPG"
' mettre ici le nom de la macro qui va charger l'image
End Sub

Ensuite dans un module déclarer la variable chemin comme publique pour être accessible par la macro c'est à dire mettre cette ligne :
Public chemin as string

Enfin remplacer dans le code de la macro de chargement l'adresse de chargement par chemin
Cdlmnt
Via
0
Merci pour votre réponse rapide !
J'ai plusieurs questions (je suis une bille en Excel vraiment désolé)

-Comment associer ce code à un bouton (car lorsque je veux l'associer cette macro "n'existe pas"

-Pour le module j'ai copié votre code dans la fenêtre module 1, est ce la bonne façon ?

Voici la macro pour faire l'appel de l'image, je l'ai modifié mais je ne suis pas trop sur de moi pour le code

GClqosR7qqR_544545.JPG

Une photo permettra de mieux expliquer .

Encore merci !
0
http://www.cjoint.com/c/GClqosR7qqR
0
via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 704
11 mars 2017 à 18:09
Re

1) la macro n'est pas associée à un bouton mais à un double-clic dans la cellule du code OACI
Elle doit donc se mettre non pas dans un module mais dans la page de l'editeur VBA de la feuille concernée comme je le disais précédemment
Par exemple si ton tableau est en Feuil2 tu double-clic sur Feuil2 dans l'arborescence à gauche de l'éditeur VBA et tu colles la macro dans la partie blanche
Bien modifier le <>2 pour l'adapter à la bonne colonne où se trouve tes OACI

2) Par contre le Public chemin as String est à mettre en début de Module 1

3) OK pour la macro, il n'y a même pas besoin de l'instruction Call, le nom de la macro suffit
(Et lorsque tu veux associer une macro à un bouton ActiveX que tu as crée sur ta feuille, tu fais clic droit sur le bouton et Visualiser le code et dans la Sub qui s'affiche tu mets le nom de la macro simplement)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci beaucoup pour votre aide .
Je vais regarder ça tout de suite
Bien cordialement
0