Créer des hyperliens, Excel VBA

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 variable ws 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 sera http://www.example.com/VBA.

5. Ajout de l’hyperlien :

  • ws.Hyperlinks.Add _ : La méthode Hyperlinks.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.

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x