Liens hypertexte VBA

Table des matières

Ce didacticiel VBA couvre les différentes façons de travailler avec des liens hypertexte dans VBA.

Liens hypertexte VBA

Avec VBA, vous pouvez ajouter des hyperliens, supprimer des hyperliens, créer des e-mails à l'aide d'hyperliens et ouvrir des fichiers à l'aide d'hyperliens dans VBA.

Ajouter un lien hypertexte avec VBA

La méthode Hyperlinks.Add ajoute un lien hypertexte à une cellule à l'aide de VBA.

Le code suivant ajoutera un lien hypertexte à la cellule A1 :

123 Sub AddHyperlinkToCell()ActiveSheet.Hyperlinks.Add Range ("A1"), Adresse :="https://www.automateexcel.com/excel/"Fin du sous-marin

Le résultat est:

Ajouter du texte à afficher avec VBA

Vous pouvez ajouter un texte convivial et soigné à afficher à votre lien hypertexte avec VBA. Si vous avez utilisé la fonctionnalité de feuille de calcul, vous insérez un lien hypertexte, puis ajoutez un texte à afficher dans la boîte de dialogue fournie.

Le code ci-dessous montre comment ajouter du texte à afficher à votre lien hypertexte à l'aide de VBA :

123 Sub TextToDisplayForHyperlink()ActiveSheet.Hyperlinks.Add Range ("A1"), Adresse :="https://www.automateexcel.com/excel/", TextToDisplay :="Automate Excel"Fin du sous-marin

Le résultat est:

Ajouter une info-bulle avec VBA

Vous pouvez ajouter une info-bulle à votre lien hypertexte que le spectateur verra lorsqu'il survolera le lien.

Le code ci-dessous montre comment ajouter une info-bulle à votre lien hypertexte à l'aide de VBA :

123 Sous-info-bullePourHyperlien()ActiveSheet.Hyperlinks.Add Range ("A1"), Address:="https://www.automateexcel.com/excel/", TextToDisplay:="Automate Excel", ScreenTip:="Ceci est le lien pour Automate Excel"Fin du sous-marin

Le résultat est:

Supprimer un lien hypertexte avec VBA

La méthode Hyperlinks.Delete peut être utilisée pour supprimer un lien hypertexte d'une cellule.

Le code suivant supprimera le lien hypertexte de la cellule A1 et le texte de la cellule.

Notez que la simple suppression du lien hypertexte ne supprime pas le texte lui-même, c'est pourquoi si vous souhaitez supprimer le texte, vous devez également utiliser la méthode Clear.

1234 Sub DeleteHyperlinkinCell()Plage("A1").Hyperliens.SupprimerPlage ("A1"). EffacerFin du sous-marin

Supprimer tous les hyperliens dans une feuille de calcul

Vous pouvez également supprimer tous les liens hypertexte de votre feuille de calcul à l'aide de la méthode Hyperlinks.Delete.

Le code suivant supprimera tous les liens hypertexte de la première feuille de calcul de votre classeur :

123 Sub RemoveAllHyperlinksInASheet()Ce classeur.Feuilles(1).Hyperliens.SupprimerFin du sous-marin

Suivre un lien hypertexte de site Web à l'aide de VBA

Le code suivant vous permet d'ouvrir une adresse de site Web, dans une nouvelle fenêtre de votre navigateur en utilisant la méthode FollowHyperlink dans votre classeur :

123 Sub FollowHyperlinkForWebsite()ActiveWorkbook.FollowHyperlink Address:="https://www.automateexcel.com/excel", NewWindow:=TrueFin du sous-marin

Suivez un lien hypertexte vers un dossier sur votre lecteur

Le code suivant ouvrira un dossier appelé ExcelFiles sur le bureau à l'aide de la méthode FollowHyperlink :

123 Sub FollowHyperlinkForFolderOnDrive()ActiveWorkbook.FollowHyperlink Address:="C:\Desktop\ExcelFiles"Fin du sous-marin

Suivre un lien hypertexte vers un fichier sur votre disque

Le code suivant ouvrira un fichier Excel appelé WorkbookOne dans le dossier appelé ExcelFiles sur le bureau à l'aide de la méthode FollowHyperlink :

123 Sub FollowHyperlinkForFile()ActiveWorkbook.FollowHyperlink Address:="C:\Desktop\ExcelFiles\WorkbookOne.xlsx", NewWindow:=TrueFin du sous-marin

Aller à une cellule dans une autre feuille dans le même classeur

Vous pouvez ajouter un lien hypertexte vers une cellule d'une feuille qui vous amène à une autre feuille, dans le même classeur avec VBA. Disons que vous êtes sur Sheet1, cellule A1 de votre classeur et que vous souhaitez insérer un lien hypertexte vers Sheet2, cellule B2 du même classeur, vous pouvez utiliser la propriété SubAddress pour ce faire.

Le code suivant montre comment procéder :

123 Sub GoToAnotherCellInAnotherSheetInTheSameWorkbook()ActiveSheet.Hyperlinks.Add Range("A1"), Address:="", SubAddress:="'" & Sheet2.Name & "'!B2", TextToDisplay:="Cliquez ici pour accéder à Sheet2, cellule B2 du même classeur"Fin du sous-marin

Afficher tous les hyperliens dans une feuille de calcul

Vous pouvez accéder à la collection d'hyperliens et afficher tous les hyperliens de votre feuille de calcul dans le Fenêtre intermédiaire dans l'éditeur VBA. Vous devez d'abord appuyer sur CTRL+G sur votre clavier ou allez sur Affichage>Fenêtre intermédiaire dans l'éditeur VBE, pour afficher la fenêtre intermédiaire.

Le code suivant montre comment afficher les liens hypertexte dans votre feuille de calcul dans la fenêtre intermédiaire :

1234567891011 Sub ShowAllTheHyperlinksInTheWorksheet()Dim ws As Feuille de calculDéfinir ws = ThisWorkbook.Sheets(1)Pour chaque lien dans ws.HyperlinksDebug.Print lnk.AddressLien suivantFin du sous-marin

Les résultats sont affichés dans la fenêtre intermédiaire.

Afficher tous les liens hypertexte dans un classeur

Vous pouvez accéder à la collection de liens hypertexte, parcourir et afficher tous les liens hypertexte de votre classeur dans une boîte de message.

Le code suivant montre comment procéder et utilise une boucle imbriquée pour y parvenir :

1234567891011 Sub ShowAllTheHyperlinksInTheWorkbook()Dim ws As Feuille de calculPour chaque ws dans ActiveWorkbook.WorksheetsPour chaque lien dans ws.HyperlinksMsgBox lnk.AddressLien suivantWS suivantFin du sous-marin

Utilisation de la méthode FollowHyperlink pour créer des e-mails

Vous pouvez également créer des e-mails à l'aide de la méthode FollowHyperlink.

Le code ci-dessous vous montrera comment créer des e-mails à l'aide de la méthode FollowHyperlink dans VBA :

12345678 Sub SendEmailUsingHyperlink()Dim msgLink en tant que chaînemsgLink = "mailto:" & "[email protected]" & "?" & "subject=" & "Bonjour" & "&" & "body=" & "Comment allez-vous ?"ActiveWorkbook.FollowHyperlink (msgLink)Fin du sous-marin

Le résultat est:

Ajout d'un lien hypertexte à une forme automatique dans Excel

Vous pouvez ajouter un lien hypertexte à une forme automatique dans Excel afin que lorsque l'utilisateur clique sur la forme, il soit dirigé vers une adresse de site Web.

Le code suivant crée un rectangle arrondi, ajoute le texte au rectangle et ajoute un lien hypertexte au rectangle :

12345678910111213 Sub AddingAHyperlinkToAShape()Dim myShape As ShapeDéfinir myDocument = Worksheets("Sheet1")Définir myShape = myDocument.Shapes.AddShape(msoShapeRoundedRectangle, 100, 100, 90, 30)Avec myShape.TextFrame.Characters.Text = "Automatiser Excel"Terminer parActiveSheet.Hyperlinks.Add Anchor:=myShape, Address:="https://www.automateexcel.com/excel"Fin du sous-marin

Le résultat est:

Insertion de la formule de lien hypertexte dans une cellule à l'aide de VBA

Disons que vous avez un titre de publication dans la cellule A4 et un lien de publication dans la cellule B4, comme indiqué dans l'image ci-dessous.

Un rappel rapide de la syntaxe de la formule de lien hypertexte de la feuille de calcul est :

HYPERLINK(link_location, [friendly_name])

link_location - Il s'agit du lien vers le document, le fichier, l'emplacement dans le classeur ou le site en ligne.

nom familier - (Optionnel) - Le texte ou la valeur numérique qui est affiché dans la cellule.

Dans la cellule C4, vous souhaitez ajouter le lien hypertexte avec un texte convivial à afficher, maintenant vous devez généralement entrer la formule =HYPERLINK(B4,A4) dans C4 pour obtenir ce qui suit :

Vous pouvez plutôt utiliser VBA pour obtenir le même résultat et insérer cette formule dans la cellule, sur Sheet1 avec le code suivant :

123 Sub InsertHyperlinkFormulaInCell()ActiveWorkbook.Worksheets("Sheet1").Range("C4").Formula = "=hyperlink(B4,A4)"Fin du sous-marin

Ajout d'un lien hypertexte à un bouton dans Access

VBA vous permet également de travailler avec des liens hypertexte dans Access. Disons que nous avons un bouton sur un formulaire et lorsque l'utilisateur clique sur ce bouton, nous voulons qu'il soit redirigé vers un site Web. Pour ce faire, vous pouvez utiliser la méthode Application.FollowHyperlink.

Nous avons notre exemple de formulaire avec un bouton appelé buttonOne illustré ci-dessous.

Le code de ce bouton serait :

12345 Bouton Sous-Sous PrivéOne_Click()Application.SuivreHyperlien ("https://www.automateexcel.com/excel/")Fin du sous-marin

Création d'un lien hypertexte à partir d'une sélection dans Word

Vous pouvez également utiliser des liens hypertexte dans Word VBA.
Disons que nous avons du texte dans Mot qui dit "Cliquez ici pour être redirigé vers le site Web Excel automatisé", qui est sélectionné comme indiqué ci-dessous.

Pour transformer ce texte en lien hypertexte à l'aide de VBA, vous pouvez utiliser le code suivant :

123 Private Sub TurnASelectionIntoAHyperlink()ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="https://www.automateexcel.com/excel/", ScreenTip:="Click Here Please", Target:=NewWindowFin du sous-marin

Le résultat est:

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave