Travailler avec les liens hypertextes et les URL dans Google Sheets
24 juillet 2026
Dès qu'une feuille de calcul échange des données avec un système externe, on se retrouve vite avec une colonne d'URL brutes ou d'identifiants — liens vers des tickets, ID d'enregistrements, chemins de fichiers — utilisables mais peu agréables à parcourir. HYPERLINK transforme ça en un lien cliquable avec son propre libellé, et ISURL permet de vérifier qu'une valeur est bien une URL avant de construire un lien avec, ou de l'envoyer plus loin dans un flux. Avec un peu de construction de chaînes en plus, ces deux fonctions couvrent l'essentiel de ce dont un tableau de bord a besoin pour la navigation.
Transformer des valeurs brutes en liens cliquables
La forme la plus simple de HYPERLINK enveloppe directement une URL :
=HYPERLINK("https://exemple.com/fiches/482", "Voir la fiche")
C'est pratique quand l'URL complète est déjà sous les yeux, mais le cas le plus fréquent est une colonne d'ID nus qu'il faut transformer en liens. Supposons que la colonne A contienne un ID de fiche et que la colonne B contienne l'URL de base de votre application — on veut que la colonne C affiche « Voir la fiche » sous forme de lien cliquable pour chaque ligne :
=HYPERLINK("https://app.exemple.com/fiches/"&A2, "Voir la fiche")
Le même principe fonctionne pour transformer une liste d'adresses e-mail en liens prêts à envoyer plutôt qu'en simple texte :
=HYPERLINK("mailto:"&A2, "Envoyer un e-mail à "&A2)
Pour pré-remplir aussi l'objet du message, les liens mailto: acceptent des paramètres, exactement comme une URL classique :
=HYPERLINK("mailto:"&A2&"?subject=Relance", "Envoyer une relance")
Comme le libellé n'est qu'un second argument, il peut être calculé à partir de n'importe quoi — une colonne de statut, un compteur, un nom — plutôt que d'écrire « Cliquez ici » en dur sur chaque ligne.
Construire des liens à partir de plusieurs morceaux avec CONCATENATE et &
Dans un vrai tableau de bord, l'URL complète est rarement stockée dans une seule cellule. On a plus souvent un chemin de base enregistré une fois pour toutes (pour pouvoir le changer facilement quand l'application déménage) et un ID ou un slug par ligne qu'on vient ajouter. & suffit pour ça, mais CONCATENATE se lit mieux dès qu'il y a plusieurs morceaux à assembler :
=HYPERLINK(CONCATENATE($B$1, "/clients/", A2), "Ouvrir la fiche client")
Ici, $B$1 contient quelque chose comme https://app.exemple.com, verrouillé en référence absolue pour ne pas bouger quand la formule est recopiée vers le bas, et A2 fournit l'ID client de chaque ligne. Il suffit de changer l'URL de base une seule fois dans B1 — par exemple lors du passage de la préproduction à la production — pour que tous les liens de la feuille se mettent à jour sans toucher à une seule formule.
Le même principe s'étend naturellement à la construction de liens de recherche ou de filtre, pas seulement de fiches individuelles :
=HYPERLINK($B$1&"/recherche?q="&A2, "Rechercher "&A2)
Si l'un des morceaux peut contenir des espaces ou des caractères spéciaux, il vaut mieux les passer d'abord dans SUBSTITUTE pour remplacer les espaces par %20 ou équivalent, avant qu'ils n'atterrissent dans l'URL — un moyen simple d'éviter un lien cassé à cause d'une chaîne non nettoyée.
=HYPERLINK($B$1&"/recherche?q="&SUBSTITUTE(A2," ","%20"), "Rechercher "&A2)
Le modèle liste déroulante vers fiche détail
Une disposition très courante associe une liste déroulante (validation des données) contenant des noms à une seule formule HYPERLINK qui ouvre la fiche de la personne sélectionnée. On configure une liste déroulante, par exemple en D1, alimentée par une liste de noms, on garde un tableau de correspondance nom / ID ailleurs dans la feuille, et on fait dépendre le lien de la valeur choisie :
=HYPERLINK($B$1&"/personnes/"&VLOOKUP(D1, Personnes!A:B, 2, FALSE), "Ouvrir la fiche de "&D1)
Changer le nom sélectionné dans la liste déroulante recalcule aussitôt la recherche d'ID et met à jour le lien — une seule cellule fait à la fois office de sélecteur et de bouton « aller à la fiche », sans script ni extension.
Valider les URL avant de les utiliser
Une formule qui construit un lien par concaténation ne vaut que ce que valent ses ingrédients. Si une URL de base perd son protocole en cours de route, ou si une cellule censée contenir un lien contient en réalité du texte brut, le HYPERLINK correspondant s'affiche quand même — il ne mène simplement nulle part d'utile. ISURL permet de repérer ça avant que ça ne devienne un lien mort :
=ISURL(A2)
Cette formule renvoie VRAI uniquement pour des URL syntaxiquement valides, ce qui en fait un garde-fou naturel autour d'une formule HYPERLINK :
=SI(ISURL(A2), HYPERLINK(A2, "Ouvrir le lien"), "URL invalide")
C'est utile partout où une feuille reçoit des URL venant de l'extérieur — une soumission de formulaire, un import, un copier-coller depuis un autre outil — et où l'on veut que les lignes problématiques soient visiblement signalées plutôt que de produire silencieusement des liens cassés. Ça fonctionne aussi dans l'autre sens : filtrer une liste pour ne garder que les lignes qui contiennent déjà quelque chose de cliquable.
=FILTER(A2:A100, ISURL(A2:A100))
Combiné à REGEXEXTRACT, on peut aussi extraire une URL d'une chaîne plus longue — une signature d'e-mail collée, une ligne de log — et la valider en une seule étape :
=ISURL(REGEXEXTRACT(A2, "https?://\S+"))
Assembler le tout
Le schéma général pour une colonne de liens dans un tableau de bord est : construire l'URL à partir d'une base stable et d'un identifiant par ligne, choisir un libellé lisible, puis valider les morceaux qu'on ne maîtrise pas totalement. Une seule formule comme celle-ci couvre la plupart des cas :
=SI(ISURL($B$1&"/fiches/"&A2), HYPERLINK($B$1&"/fiches/"&A2, "Voir "&A2), "Vérifier l'ID")
C'est un peu plus défensif qu'un simple HYPERLINK, mais ça signifie qu'une URL de base cassée ou un ID mal formé apparaît comme un message explicite dans la cellule plutôt que comme un lien qui échoue silencieusement.