| auteur : SilkyRoad |
Ajoutez un signet dans le document Word, à l'emplacement souhaité, puis fermez le fichier.
Ensuite, lors de la création du lien hypertexte dans Excel, spécifiez le nom du signet à atteindre.
Exemple:
C:\Dossier\MonFichier.doc#NomDuSignet
Le document Word s'ouvrira directement à l'emplacement du signet lorsque vous cliquerez su le lien hypertexte.
La même opération, pour ouvrir un fichier Word par macro et atteindre un signet:
Vba |
ThisWorkbook. FollowHyperlink " C:\Dossier\MonFichier.doc#NomDuSignet " , , True
|
|
| auteur : Bidou |
On peut ajouter un lien indifféremment à un objet ou à une plage.
Vba |
Dim objLink As Hyperlink
Set objLink = ActiveSheet. Hyperlinks . Add (Range (" F2 " ), " d:\user\tuto.xls " )
With objLink
. SubAddress = " A1:C10 "
. Follow NewWindow:= True
End With
|
Ce code crée le lien est ouvre une nouvelle fenêtre contenant la cible. Astuce : Lorsqu'on modifie la cible d'un
lien existant on ne modifie pas le texte du lien. Pour que celui-ci change, il faut modifier la propriété value de la cellule
contenant le lien :
Vba |
objLink. Address = " d:\jmarc.xls "
objLink. Range . Value = " d:\jmarc.xls "
|
|
| auteur : SilkyRoad | Vba |
Sub Test ()
DeclencheLien Range (" A1 " )
End Sub
Sub DeclencheLien (Cellule As Range)
If Cellule. Hyperlinks . Count = 0 Then
MsgBox " il n'y a pas de lien hypertexte dans la cellule " & Cellule. Address
Else
Cellule. Hyperlinks (1 ). Follow NewWindow:= True
End If
End Sub
|
|
| auteur : SilkyRoad |
Cette macro boucle sur les liens de la feuille active et ouvre le fichier lié s'il s'agit d'un classeur.
Chaque feuille de ce classeur est ensuite imprimée.
Vba |
Sub imprimerPageActiveEt_Liensclasseurs ()
Dim Lien As Hyperlink
Dim I As Byte
Application. ScreenUpdating = False
ActiveSheet. PrintOut
For Each Lien In ActiveSheet. Hyperlinks
If Right (Range (Lien. Range . Address ). Hyperlinks (1 ). Address , 4 ) = " .xls " Then
Range (Lien. Range . Address ). Hyperlinks (1 ). Follow NewWindow:= False
ActiveWorkbook. PrintOut
ActiveWorkbook. Close
End If
Next
Application. ScreenUpdating = True
End Sub
|
|
| auteur : SilkyRoad |
Saisissez l'adresse de messagerie dans une cellule et appuyez sur la touche Entrée.
Le lien est créé automatiquement.
Si ce n'est pas le cas, faites un clic droit dans la cellule.
Sélectionnez l'option "Lien hypertexte" dans le menu contextuel.
Saisissez le mail dans le champ Adresse.
Cliquez sur le bouton OK pour valider.
(Le texte mailto: s'ajoute automatiquement lorsque vous saisissez
le symbole @.)
La même action par macro:
Vba |
Sub CreationLienMail ()
With ActiveSheet
. Range (" A1 " ) = " La description "
. Hyperlinks . Add . Range (" A1 " ), Address:= " mailto:mimi@mail.fr "
End With
End Sub
|
|
| auteur : SilkyRoad | Vba |
Sub Test ()
MsgBox VerifHyperlink (Range (" A1 " ))
End Sub
Function VerifHyperlink (Cellule As Range) As Boolean
Dim Cible As String
If Cellule. Hyperlinks . Count = 0 Then
VerifHyperlink = False
Exit Function
End If
Cible = Cellule. Hyperlinks (1 ). Address
If Dir (Cible) < > " " And Cible < > " " Then
VerifHyperlink = True
Else
VerifHyperlink = False
End If
End Function
|
|
| auteur : SilkyRoad |
Placez cette formule dans la cellule de votre choix.
Le classeur doit être préalablement sauvegardé pour que ça fonctionne.
=LIEN_HYPERTEXTE(GAUCHE(CELLULE("filename");CHERCHE("[";CELLULE("filename");1)-2);"Lien vers le répertoire")
|
| auteur : SilkyRoad |
Lorsque vous saisissez des liens html ou des adresses mail dans une cellule, ils sont par défaut automatiquement transformés
en lien cliquable.
Pour qu'Excel ne formate pas les cellules comme des liens web:
Utilisez le menu outils.
Options de correction automatique.
Pour la version Excel2007:
Cliquez sur le bouton "Office", puis sur le bouton "Options Excel".
Menu "Vérification".
Cliquez sur le bouton "Options de vérification automatique".
La boîte de dialogue "Correction automatique" s'affiche à l'écran.
Dans l'onglet “Mise en forme automatique au cours de la frappe”, décochez l'option "Adresse internet et réseau avec des liens hypertexte".
Cliquez sur le bouton OK pour valider.
Désormais, les liens html et les adresses mails sont considérés comme de simples textes.
|
| auteur : SilkyRoad |
Ce n'est pas possible directement car une feuille graphique ne contient pas de cellule à lier.
Une solution de substitution consiste à créer le lien vers une cellule d'un autre onglet et cette cellule
contiendra le nom de la feuille graphique. Ensuite, dans le module objet de l'onglet contenant la cellule de
destination, ajoutez cette macro évènementielle:
Vba |
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
Dim Ch As Chart
If Not Intersect (Target, Range (" A1 " )) Is Nothing Then
On Error Resume Next
Set Ch = Charts (Target. Value )
On Error GoTo 0
If Not Ch Is Nothing Then Charts (Target. Value ). Activate
End If
End Sub
|
Le lien va atteindre la cellule et l'évènement SelectionChange redirige automatiquement vers le graphique, dont le nom
est saisi dans la cellule. Ici, le lien doit pointer vers la cellule A1.
|
| auteur : SilkyRoad |
Cette fonction permet d'ouvrir un autre fichier et/ou d'atteindre un emplacement particulier.
=LIEN_HYPERTEXTE("C:\dossier\test.pdf";"Cliquez ici !")
=LIEN_HYPERTEXTE("C:\dossier\NomClasseur.xls";"Cliquez ici !")
=LIEN_HYPERTEXTE("http://www.developpez.com/";"Cliquez ici !")
Vous pouvez indiquer un nom de serveur UNC:
=HYPERLINK("\\NomServeur\dossier\NomClasseur.xls";"Cliquez ici !")
Pour ouvrir un classeur et atteindre une cellule particulière:
=LIEN_HYPERTEXTE("C:\dossier\NomClasseur.xls#'Feuil1'!G50";"Cliquez ici !")
Pour atteindre une cellule ou une plage nommée:
=LIEN_HYPERTEXTE("[C:\dossier\NomClasseur.xls]NomTest";"Cliquez ici !")
Si vous souhaitez créer un lien hypertexte vers un emplacement précis dans un document Microsoft Word,
utilisez un signet pour définir cet emplacement. L'exemple suivant crée un lien hypertexte vers le signet "Signet1"
dans le document nommé monFichier.doc
=LIEN_HYPERTEXTE("C:\monFichier.doc#Signet1";"Cliquez ici")
Accéder à la cellule D10 dans la Feuil2, du même classeur:
=LIEN_HYPERTEXTE("[monClasseur]Feuil2!D10";"Mon lien hypertexte")
3 Remarques:
Même si vous restez dans le même classeur, précisez son nom.
Si le nom de la feuille contient un espace , le nom doit être encadré par des apostrophes:
=LIEN_HYPERTEXTE("[monClasseur.xls]'ma feuille'!D10";"Mon lien hypertexte")
Si le nom du classeur est amené à changer dans le temps vous pouvez utiliser:
=LIEN_HYPERTEXTE("["&STXT(CELLULE("nomfichier"); TROUVE("["; CELLULE("nomfichier"))+1;TROUVE("]"; CELLULE("nomfichier"))- TROUVE("[";
CELLULE("nomfichier"))-1)&"]'ma feuille'!D10";"Mon lien hypertexte")
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2008
Developpez LLC. Tout droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|