Lien hypertexte en vba

Le
JP
Bonjour,
Je voudrais placer un lien hypertexte sur un nom de fichier par vba.
En colonne D je tape le nom du fichier.

Comment placer un lien hypertexte sur ce fichier.
Voici ce que j'ai commencé à écrire:

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("D5:D505")) Is Nothing Then
derligne = Range("D500").End(xlUp).Row
NomFichier = "DP" & Range("D" & derligne) & ".xls"
ActiveSheet.Hyperlinks.Add Anchor:=NomFichier, Address:="D:CTXFIN=
ANCIERDEMANDES MATERIAUXDP 2014" _
, TextToDisplay:=NomFichier

End If
End Sub

Merci

JP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #26059142
Bonjour,

Et comme ceci :


Private Sub Worksheet_Change(ByVal Target As Range)

Dim DerLig As Long, Fichier As String
Dim Chemin As String

Chemin = "D:CTXFINANCIERDEMANDES MATERIAUXDP 2014"

If Not Intersect(Target, Range("D5:D505")) Is Nothing Then
DerLig = Range("D500").End(xlUp).Row
Fichier = "DP" & Range("D" & DerLig) & ".xls"
If Dir(Chemin & Fichier) <> "" Then
Me.Hyperlinks.Add Anchor:=NomFichier, _
Address:="D:CTXFINANCIERDEMANDES MATERIAUXDP 2014" _
, TextToDisplay:=NomFichier
Else
MsgBox "Aucun fichier correspond à """ & Fichier & """ dans ce " & _
"répertoire """ & Chemin & """."
End If
End If

End Sub
JP
Le #26059592
Bonsoir Denis,

J'ai une erreur d'exécution 13 avec le message "Incompatibilité de type "
sur la ligne suivante.

Me.Hyperlinks.Add Anchor:=Fichier, Address:=Chemin, TextToDisplay:=Fi chier

JP
MichD
Le #26059782
'----------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

Dim DerLig As Long, Fichier As String
Dim Chemin As String

Chemin = "D:CTXFINANCIERDEMANDES MATERIAUXDP 2014"

If Not Intersect(Target, Range("D5:D505")) Is Nothing Then
DerLig = Range("D500").End(xlUp).Row
Fichier = "DP" & Range("D" & DerLig) & ".xls"
If Dir(Chemin & Fichier) <> "" Then
Me.Hyperlinks.Add Anchor:=Me.Range("A5"), _
Address:= Chemin & Fichier, _
TextToDisplay:=Chemin & Fichier
Else
MsgBox "Aucun fichier correspond à """ & Fichier & """ dans ce " & _
"répertoire """ & Chemin & """."
End If
End If

End Sub
'----------------------------------------------------
JP
Le #26059902
Bonjour Denis,

Le changement d'heure ne te gêne pas à priori vu l'heure à laquelle t u as répondu.
Juste une dernière chose.
Quand je clique sur le lien hypertexte créé, Excel me demande si je veu x activer les macros du fichier.
Comment éviter cette question dans la mesure ou je peux attester de l'int égrité du fichier? (j'en suis l'auteur)

Pour le moment voici le code commenté pour ceux qui pourraient être int éressés. J'ai fait quelques modifications de ta proposition.

JP

Private Sub Worksheet_Change(ByVal Target As Range)

'déclaration des variables
Dim DerLig As Long, Fichier As String
Dim Chemin As String, Cell As Variant


If Not Intersect(Target, Range("D5:D505")) Is Nothing Then

Chemin = ActiveWorkbook.Path & "" 'chemin du dossier actif
Application.EnableEvents = False ' désactive temporairement la macr o événementielle
DerLig = Range("D500").End(xlUp).Row ' trouve la dernière cellule écrite de la colonne D
Cell = Range("D" & DerLig).Address ' mémorise l'adresse de la cellu le où doit s'écrire le lien
Fichier = "DP" & Range("D" & DerLig) & ".xls" ' nom du fichier

If Dir(Chemin & Fichier) <> "" Then

'créé le lien hypertexte
Me.Hyperlinks.Add Anchor:=Me.Range(Cell), Address:=Chemin & Fic hier, _
TextToDisplay:=Chemin & Fichier

Else

'message si le fichier n'est pas trouvé
MsgBox "Aucun fichier correspond à """ & Fichier & """ dans ce " & _
"répertoire """ & Chemin & """."
End If
End If

Application.EnableEvents = True 'réactive la macro événementielle

End Sub
JP
Le #26060312
Merci, je vais regarder cela.

JP
MichD
Le #26060422
Si tu veux modifier la sécurité dans Excel,

Dans les options d'Excel / Centre de gestion de la confidentialité / Bouton
: Paramètres du centre de gestion de la confidentialité /
il y a un amalgame d'options regardant la sécurité... selon le niveau de
sécurité que tu veux appliquer.

Exemple : Emplacements approuvés : Tu peux ajouter un répertoire où se
retrouvent lesdits documents.

Tu peux signer numériquement le projet macro : Voir comment faire à cette
adresse comment procéder :
http://office.microsoft.com/fr-ca/excel-help/signer-numeriquement-votre-projet-macro-HA010354312.aspx
JP
Le #26060962
Denis,


J'ai opté pour la solution:

Exemple : Emplacements approuvés : Tu peux ajouter un répertoire où s e
retrouvent lesdits documents.

Merci ça fonctionne très bien.

JP
Publicité
Poster une réponse
Anonyme