Liens Hypertexte associé à certaines cellules

Résolu
Silvanos Messages postés 6 Date d'inscription lundi 6 février 2012 Statut Membre Dernière intervention 9 février 2012 - 7 févr. 2012 à 00:24
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 8 févr. 2012 à 08:00
Bonjour,

J'aimerai créer un lien hypertexte vers un dossier.

Je souhaite que l'action se fasse lors du changement d'onglet donc par exemple sur l'appui du bouton ou bien
l'activation de mon onglet. Ainsi, je créée mon lien hypertexte que j'affecte à ma cellule (x,y)



J'ai créer une liste de choix de sélection de projet (prj1, prj2, prj3).

J'aimerai, lors d'un changement d'onglet, associer à une certaine cellule cells(x,y) un lien hypertexte vers
un dossier "c:\MyDocs" & sheets("name").cells(x,y).value & "\Projets\..." et pouvoir exécuter son ouverture.


Quelqu'un a t'il une solution de code à insérer dans VBA afin d'obtenir ce genre de chose?

En vous remerciant par avance.

7 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 219
8 févr. 2012 à 07:26
Peux-tu/veux-tu bien, silvanos, nous montrer ce que tu as obtenu à l'aide de l'enregistreur de macro en l'ouvrant, puis en affectant à une cellule de ton choix le lien hypertexte de ton choix (comme je ter l'ai demandé plus haut !) ?
Car ou tu ne l'as pas fait ou tu n'as rien compris du code ainsi obtenu.
Ce que je veux donc savoir, c'est si tu as fait ce petit effort (et on le saura vite lorsque tu nous auras montré ici le code ainsi obtenu).


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 219
8 févr. 2012 à 08:00
Voilà ! (tu vois le temps perdu pour si peu ?)
Il te faut maintenant nettoyer un peu ce code dezs gestes manuels (les select) :
=>> exemple :
Range("T19:Y19").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"Palmetto problem 20120106/Painting Damaged", TextToDisplay:= _
"Electrical verification of conformity" 

se traduit donc par :
Worksheets("nom-de-ta-feuille").Range("T19:Y19").Hyperlinks.Add Anchor:=Selection, Address:= _
"Palmetto problem 20120106/Painting Damaged", TextToDisplay:= _
"Electrical verification of conformity" 

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 219
7 févr. 2012 à 00:37
Bonjour,

Pour faire ce que tu dis (au changement "d'onglet") , tu n'as d'autre choix que celui d'appeler, depuis l'évènement Worksheet_Activate de chacune de tes feuilles une procédure déclarée publique dans un module
Pour le reste (ouverture d'un autre classeur pour y écrire dans une cellule) : sujet récurrent (utilise le moteur de recherche de ce forum)



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 219
7 févr. 2012 à 06:45
Je ne t'ai pas répondu en ce qui concerne l'ajout d'un lien hypertexte dans une cellule.
Il y a une raison à cela : il te suffit d'utiliser l'enregistreur de macro pour en obtenir le code qui doit t'inspirer.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0

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

Posez votre question
Silvanos Messages postés 6 Date d'inscription lundi 6 février 2012 Statut Membre Dernière intervention 9 février 2012
8 févr. 2012 à 04:18
Pas de soucis pour la localisation de ma fonction au sein de mon programme, il s'agit plus de la manière d'utiliser la fonction associé à la création de lien hypertexte tel que je le souhaite.
Malgrès la visualisation des autres postes, je n'arrive pas à mettre ce système en place.
0
Silvanos Messages postés 6 Date d'inscription lundi 6 février 2012 Statut Membre Dernière intervention 9 février 2012
8 févr. 2012 à 04:53
Voici ce que je souhaite mettre en place: lien vers mon répertoire.
Pour cela j'utilise le code source suivant:


Private Sub CommandButton3_Click()
'Changement d'onglet Lot 3
Sheets("Lot 3").Visible = True
Sheets("Lot 3").Select
Sheets("Initial").Visible = False
'Création des liens hypertextes
'If Sheets("Initial").Cells(6, 7).Value = "XXX" Then
' Lien = "D:\XXX\XXX\XXX"
' Sheets("Lot 3").Cells(19, 20).Value = LIEN_HYPERTEXTE("Lien")
'End If
End Sub
0
Silvanos Messages postés 6 Date d'inscription lundi 6 février 2012 Statut Membre Dernière intervention 9 février 2012
8 févr. 2012 à 07:51
Bonjour,

Je viens tout juste, suite à ton nouveau message, de prendre connaissance de cet enregistreur de macro et de l'utiliser en recherchant sur le net. J'avais jusqu'à présent réalisé tout mon programme en VBA sans jamais connaître l'existence de cet outils.

Je vais l'utiliser dès maintenant pour voir les résultats obtenus déjà très intéressant :

Sub Hypertexte()
'
' Hypertexte Macro
ActiveSheet.Unprotect
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Range("E9").Select
ActiveSheet.Unprotect
Range("T19:Y19").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"Palmetto problem 20120106/Painting Damaged", TextToDisplay:= _
"Electrical verification of conformity"
Selection.Font.Bold = True
Selection.Font.Underline = xlUnderlineStyleNone
Selection.Font.ColorIndex = 0
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
0