George insère souvent des hyperliens dans ses feuilles de calcul. Ces hyperliens sont vers des fichiers de différents types qui résident sur son système informatique. Lorsqu’il insère les liens hypertexte, le texte du lien hypertexte par défaut qu’Excel insère est le chemin complet et le nom de fichier du fichier. George aimerait que ce texte d’hyperlien, par défaut, ne contienne que le nom du fichier, sans le chemin complet.

Il existe un moyen très simple d’obtenir le résultat souhaité: il vous suffit de déplacer le classeur dans le même dossier contenant les fichiers vers lesquels vous souhaitez des hyperliens. Lorsque vous utilisez la boîte de dialogue Insérer un lien hypertexte, le nom de fichier (sans le chemin) est ensuite utilisé pour le lien.

Si cela n’est pas possible, l’utilisation de la boîte de dialogue Insérer un lien hypertexte entraîne un chemin complet se terminant à la fois dans le champ Adresse et le champ Texte à afficher de la boîte de dialogue Insérer un lien hypertexte. Il n’existe aucun moyen de modifier ce comportement par défaut; vous ne pouvez modifier que la valeur par défaut proposée par Excel. Cela signifie que vous pouvez, sur la base d’un lien hypertexte individuel, modifier le champ Texte à afficher dans la boîte de dialogue Insérer un lien hypertexte afin qu’il affiche uniquement le nom du fichier, comme vous le souhaitez.

Bien sûr, cela implique beaucoup d’édition – d’où l’impulsion de la requête de George. Il existe plusieurs façons de contourner ce problème. La première consiste à ne pas compter sur la boîte de dialogue Insérer un lien hypertexte. À la place, construisez une formule qui insère le lien hypertexte à l’aide de la fonction HYPERLINK. Disons, par exemple, que vous avez, dans la cellule C2, un chemin d’accès au dossier contenant vos fichiers:

C:\Users\allen\Desktop\

De plus, vous pourriez avoir une liste de noms de fichiers dans la plage D2: D75, comme ceci:

MyWorkbook.xlsx MyDocument.docx MyPDF.pdf

Vous pouvez placer une formule comme celle-ci dans la cellule E2:

=HYPERLINK($C$2 & D2,D2)

Copiez la formule dans la plage E3: E75, et vous aurez vos hyperliens comme vous le souhaitez.

Si vous avez déjà un tas de liens insérés dans la feuille de calcul (par exemple, dans la colonne A), vous pouvez utiliser une formule un peu plus grande pour extraire et afficher uniquement le nom du fichier:

=HYPERLINK(A1,SUBSTITUTE(A1,LEFT(A1,FIND(CHAR(1),SUBSTITUTE(A1, "\",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))),""))

Vous pouvez alors masquer la colonne contenant les liens hypertexte du chemin complet, de sorte que vous ne voyez que les versions raccourcies souhaitées.

Si vous souhaitez affecter de nombreux liens hypertexte, vous pouvez utiliser une macro pour supprimer le chemin de tous les liens hypertexte existants.

Sub FixHyperlinkDesc()

Dim h As Hyperlink     Dim sRaw As String     Dim iPos As Integer

For Each h In ActiveSheet.Hyperlinks         sRaw = h.TextToDisplay         iPos = Instr(1, sRaw, "\")

While (iPos > 0)

sRaw = Mid(sRaw, iPos + 1, Len(sRaw))

iPos  = Instr(1, sRaw, "\")

Wend         If sRaw <> h.TextToDisplay Then             h.TextToDisplay = sRaw         End If     Next h End Sub

La seule chose que la macro touche est le texte d’affichage de chaque lien hypertexte, et elle supprime tout avant la barre oblique inverse finale. La macro n’affectera rien qui peut apparaître à la suite d’une fonction HYPERLINK.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (13279) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365.