Les hyperliens sont des URL attachées à une valeur qui est vue lorsque nous passons la souris dessus et lorsque nous cliquons dessus, l'URL est ouverte, dans VBA, nous avons une propriété intégrée pour créer des hyperliens dans VBA et pour utiliser cette propriété, nous utilisons la méthode Add avec l'instruction de lien hypertexte pour insérer un lien hypertexte dans une cellule.
Hyperliens dans Excel VBA
Même si nous avons la touche de raccourci Page précédente et page suivante dans Excel pour passer d'une feuille à une autre, cela devient complexe lorsque nous devons passer de 10 à plusieurs feuilles de calcul. C'est là que la beauté des «hyperliens dans Excel» entre en scène. Le lien hypertexte est une URL prédéterminée qui vous amène à la cellule ou à la feuille de calcul respective comme assignée.
Nous savons tous comment créer des liens hypertexte dans la feuille de calcul pour passer rapidement d'une feuille à une autre, et vous pouvez également accéder à n'importe quelle autre feuille. Mais dans l'article d'aujourd'hui, nous allons vous montrer comment créer des hyperliens en utilisant le codage VBA.

La formule des hyperliens VBA
Regardons la formule des hyperliens dans Excel VBA.

- Ancre: dans quelle cellule vous souhaitez créer un lien hypertexte.
- Adresse: Quelle est l'URL du lien hypertexte pour naviguer?
- (Sous-adresse): Quel est l'emplacement de la page?
- (Astuce d'écran): Quelle est la valeur à afficher lorsque vous placez un pointeur de souris sur le nom ou la cellule du lien hypertexte?
- (Texte à afficher): Quel est le test à afficher dans la cellule? Par exemple, Nom de la feuille de calcul.
Comment créer des hyperliens dans Excel VBA?
Supposons que vous souhaitiez créer un lien hypertexte VBA vers la feuille nommée «Feuille principale» de l'autre feuille «Exemple 1».

Dans la feuille de calcul «Exemple 1» et dans la cellule A1, je vais créer le lien hypertexte en utilisant Code en VBA.
Étape 1: Tout d'abord, sélectionnez la cellule A1 de la feuille de calcul Exemple 1.
Code:
Sous Hyperlink_Example1 () Worksheets ("Exemple 1"). Sélectionnez Plage ("A1"). Sélectionnez End Sub

Étape 2: Maintenant, en utilisant l'objet Active Cell, ouvrez les hyperliens. Ajouter une méthode.
Code:
Sous Hyperlink_Example1 () Worksheets ("Exemple 1"). Sélectionnez Plage ("A1"). Sélectionnez ActiveCell.Hyperlinks.Add (End Sub

Étape 3: Le premier argument est «Ancre», c'est-à-dire dans quelle cellule nous allons créer le lien hypertexte VBA. Dans ce cas, la cellule A1 et puisque nous avons déjà sélectionné la cellule A1 pour la mentionner comme «Sélection».
Code:
Sous Hyperlink_Example1 () Worksheets ("Exemple 1"). Sélectionnez Plage ("A1"). Sélectionnez ActiveCell.Hyperlinks.Add (Selection, End Sub

Étape 4: Nous ne créons aucune adresse ici, alors ignorez l'adresse pour le moment.
Code:
Sous Hyperlink_Example1 () Worksheets ("Exemple 1"). Sélectionnez Plage ("A1"). Sélectionnez ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", End Sub

Étape 5: Vient ensuite la sous-adresse. Ici, nous devons mentionner à quelle feuille nous nous référons et la première cellule de cette feuille.
Code:
Sous Hyperlink_Example1 () Worksheets ("Exemple 1"). Sélectionnez Plage ("A1"). Sélectionnez ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", SubAddress: = "'Main Sheet'! A1", End Sous

J'ai mentionné le nom de la feuille comme «Feuille principale», et dans cette feuille, l'adresse de la cellule est «A1».
Étape 6: Ignorez également l'info-bulle. Pour le texte à afficher, mentionnez le nom de la feuille.
Code:
Sous Hyperlink_Example1 () Worksheets ("Exemple 1"). Sélectionnez Plage ("A1"). Sélectionnez ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", SubAddress: = "'Main Sheet'! A1", TextToDisplay : = "Feuille principale" End Sub

Ok, exécutez ce code en utilisant la touche F5 ou manuellement. Ensuite, il créera un hyperlien dans la cellule A1 de la feuille «Exemple 1».

Lorsque vous cliquez sur Hyperlien «Feuille principale», il redirige vers la feuille principale.

Hyperliens de plusieurs feuilles avec des boucles
Nous avons vu créer un lien hypertexte VBA pour une feuille. Lorsque nous avons plusieurs feuilles, il n'est pas facile de créer un lien hypertexte VBA pour chaque feuille avec la même ligne de code pour chaque feuille.
Supposons que vous ayez 11 feuilles de calcul, comme indiqué dans l'image ci-dessous.

Vous souhaitez créer un lien hypertexte pour chaque feuille de la feuille d' index à l' aide du code VBA.
Étape 1: définissez la variable en tant que feuille de calcul.
Code:
Sub Create_Hyperlink () Dim Ws As Worksheet End Sub

Étape 2: La première chose à faire est de sélectionner l'index de la feuille de calcul et de sélectionner la cellule A1.
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select End Sub

Step 3: Now open For Each Loop in VBA.
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets Next Ws End Sub

Step 4: Since we have already selected the cell A1 it is now an active cell. So start the hyperlink with the active cell.
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add( Next Ws End Sub

Step 5: Anchor is a hyperlink cell. So it is the active cell.
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Next Ws End Sub

Step 6: Address is nothing mention it as “.
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell,Address:="", Next Ws End Sub

Step 7: Subaddress is when we loop through the sheet, it should be the sheet name. To refer to the sheet name, we need a single quote, “’” with sheet name and “! Cell Address,” and close the sheet name with a single quote “’.”
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell,Address:="",SubAddress:=""& Ws.Name&"!A1"&"", Next Ws End Sub

Step 8: Ignore Screen tip, and for Text to display, you can enter the worksheet name.
Code:
Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Address:="", SubAddress:="" & Ws.Name & "!A1" & "", ScreenTip:="", TextToDisplay:=Ws.Name Next Ws End Sub

Étape 9: Pour stocker le lien hypertexte de chaque feuille dans une cellule différente, chaque fois qu'un lien hypertexte est créé pour une feuille, nous devons descendre d'une cellule à partir de la cellule active.
Code:
Sub Create_Hyperlink () Dim Ws As Worksheet Worksheets ("Index"). Sélectionnez Range ("A1"). Sélectionnez For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor: = ActiveCell, Address: = "", SubAddress: = "" & Ws.Name & "! A1" & "", info-bulle: = "", TextToDisplay: = Ws.Name ActiveCell.Offset (1, 0) .Sélectionnez Next Ws End Sub

Cela créera un lien hypertexte de toutes les feuilles de la feuille d'index. Ce code est dynamique à chaque ajout ou suppression de feuilles. Nous devons exécuter ce code pour avoir un lien hypertexte mis à jour.
