Créer des hyperliens, Excel VBA
Voici le même code VBA détaillé pour créer des hyperliens dans Excel, avec une explication complète.
Code VBA pour créer des hyperliens
Sub CreerHyperliens() Dim ws As Worksheet Dim cell As Range Dim texteHyperlien As String Dim adresseHyperlien As String ' Définir la feuille de calcul où les hyperliens seront créés Set ws = ThisWorkbook.Sheets("Feuille1") ' Parcourir la plage de cellules où vous souhaitez créer des hyperliens (par exemple, A2:A10) For Each cell In ws.Range("A2:A10") ' Vérifier si la cellule contient une valeur (créer un hyperlien uniquement si la cellule n'est pas vide) If cell.Value <> "" Then ' Définir le texte qui sera affiché comme hyperlien texteHyperlien = cell.Value ' Définir l'adresse de l'hyperlien (cela peut être une URL ou un chemin de fichier) ' Ici, on suppose que les hyperliens pointent vers "http://www.example.com/" et que le texte de la cellule est ajouté à cela. adresseHyperlien = "http://www.example.com/" & cell.Value ' Ajouter l'hyperlien à la cellule actuelle ws.Hyperlinks.Add _ Anchor:=cell, _ Address:=adresseHyperlien, _ TextToDisplay:=texteHyperlien End If Next cell End Sub
Explication détaillée
1. Définition de la feuille de calcul :
Set ws = ThisWorkbook.Sheets("Feuille1")
: Cette ligne définit la variablews
pour faire référence à la feuille de calcul « Feuille1 » du classeur actuel. Vous pouvez modifier « Feuille1 » par le nom réel de votre feuille de calcul.
2. Définition de la plage :
For Each cell In ws.Range("A2:A10")
: Cette ligne spécifie la plage de cellules (A2:A10
) où les hyperliens seront créés. Vous pouvez ajuster cette plage selon vos besoins.
3. Vérification des cellules vides :
If cell.Value <> "" Then
: Avant de créer un hyperlien, le code vérifie si la cellule contient une valeur. Cela permet de s’assurer qu’aucun hyperlien n’est créé pour des cellules vides.
4. Définition du texte et de l’adresse de l’hyperlien :
texteHyperlien = cell.Value
: Le texte de l’hyperlien affiché dans la cellule est défini par la valeur de la cellule actuelle (cell.Value
).adresseHyperlien = "http://www.example.com/" & cell.Value
: Cette ligne construit l’URL complète pour l’hyperlien en ajoutant la valeur de la cellule à une URL de base. Par exemple, si la cellule contient le mot « VBA », l’adresse de l’hyperlien serahttp://www.example.com/VBA
.
5. Ajout de l’hyperlien :
ws.Hyperlinks.Add _
: La méthodeHyperlinks.Add
est utilisée pour créer un hyperlien. Les paramètres de cette méthode sont :Anchor:=cell
: Cela spécifie la cellule où l’hyperlien sera ajouté.Address:=adresseHyperlien
: C’est l’adresse de destination de l’hyperlien (URL ou chemin de fichier).TextToDisplay:=texteHyperlien
: C’est le texte qui sera affiché comme hyperlien dans la cellule.
6. Boucle sur la plage de cellules :
- La boucle
For Each
parcourt chaque cellule de la plage spécifiée (A2:A10
). Si la cellule contient une valeur, un hyperlien sera créé dans cette cellule.
Options de personnalisation :
- Plage différente : Vous pouvez ajuster la plage de cellules (
ws.Range("A2:A10")
) pour correspondre à la plage où vous souhaitez créer les hyperliens. - Adresse de l’hyperlien : Le code construit l’adresse de l’hyperlien en concaténant la valeur de la cellule avec une URL de base (
"http://www.example.com/"
). Vous pouvez personnaliser cela pour créer des liens vers différents sites Web, des fichiers locaux ou même des plages internes d’Excel. - Texte à afficher : Le texte de l’hyperlien est pris directement de la valeur de la cellule. Vous pouvez personnaliser ce texte en définissant
texteHyperlien
à n’importe quel texte ou valeur que vous préférez.
Ce code VBA est une méthode flexible et dynamique pour créer des hyperliens dans Excel en fonction des valeurs contenues dans une plage spécifiée de cellules.