Forcer un lien hypertexte à s'ouvrir avec un programme donné ?

Lisette

XLDnaute Junior
Bonjour tout le monde !

J'ai un petit souci avec des liens hypertxte : mon fichier excel est partagé entre plusieurs utilisateurs et mis sur un intranet. Il s'ouvre avec internet explorer.
Mon souci est que lorsque je clique sur un lien hypertexte dans mon fichier, il s'ouvre aussi dans IE, dans la même fenêtre, fermant donc mon fichier excel. Je précise que mon lien est fait par la fonction Lien_hypertexte et non par "Insérer lien hypertexte"

J'ai peut-être une solution qui me vient à l'esprit : peut-on du coup par vba, faire en sorte que lorsqu'on clique sur le lien, on force l'ouverture par acrbat reader ?
Je vous joins une version light de mon fichier pour que ce soit plus clair :)

D'avance merciiiii ! :)
Bonne journée à tous
 

Pièces jointes

  • Exemple.xls
    124 KB · Affichages: 157
  • Exemple.xls
    124 KB · Affichages: 203
  • Exemple.xls
    124 KB · Affichages: 218

Matheop

XLDnaute Occasionnel
Re : Forcer un lien hypertexte à s'ouvrir avec un programme donné ?

Re Lisette,

Je te suggère d'essayer cette méthode que j'ai proposé hier à un autre membre. Tu places les deux codes suivants dans ton classeur.

Code au niveau de la feuille contenant les liens :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Column = 2 And Target.Value <> "" Then ShellExecute 0&, vbNullString, Target, MonParamètre, vbNullString, vbNormalFocus

End Sub

Code à insérer dans un module :
Code:
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Techniquement dans le module tu déclares une fonction qui permet d'ouvrir le Shell Windows. Ensuite au niveau de ta feuille la procédure est exécutée chaque fois que tu sélectionnes une cellule différente. Une condition est exécutée afin de s'assurer que tu ouvres bien un lien contenu dans une cellule non vide de la colonne B. Si la condition est vérifiée alors le Shell se charge d'ouvrir le lien et son extension avec le programme adapté.

Cordialement,
Mat'
 
Dernière édition:

Lisette

XLDnaute Junior
Re : Forcer un lien hypertexte à s'ouvrir avec un programme donné ?

Salut Matichoux (encore toi ! :))
Malheureusement, lorsque je la mets en oeuvre, il m'ouvre un répertoire de mon disque dur (qui n'est même pas celui des fiches de destination), et non mon fichier cible... comprend pas...
 

Matheop

XLDnaute Occasionnel
Re : Forcer un lien hypertexte à s'ouvrir avec un programme donné ?

Re, bonjour pierrejean

En effet je viens de me rendre compte de ma "bêtise".. ce sont tes utilisateurs qui vont ouvrir le fichier depuis l'Intranet donc ma méthode est à oublier (elle fonctionne en local - ou sur un dossier partagé accessible depuis le poste local - en fournissant le chemin complet des fichiers à ouvrir)...
 

Discussions similaires

Réponses
5
Affichages
156