Comment créer des hyperliens dans Excel en utilisant C#

Comment créer des hyperliens dans Excel avec C#35;

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXL permet aux développeurs C# de créer divers hyperliens dans les cellules Excel, notamment des URL, des chemins d'accès aux fichiers, des adresses électroniques et des références de cellules sans utiliser l'interopérabilité, ce qui simplifie le processus d'ajout d'une navigation interactive aux feuilles de calcul.

Les hyperliens Excel permettent de faire référence, par un clic, à des emplacements dans le classeur, à différents fichiers, à des pages Web ou à des adresses électroniques. Elles améliorent la navigation, permettant un accès rapide aux informations connexes et aux ressources externes. Les hyperliens créent des feuilles de calcul interactives et conviviales, facilitant l'accès à des données supplémentaires ou à du contenu externe.

IronXL permet la création de liens hypertextes pour les URL, l'ouverture de fichiers externes à partir de systèmes de fichiers locaux et FTP (File Transfer Protocol), d'adresses électroniques, d'adresses de cellules et de cellules nommées définies sans utiliser Interop dans .NET C#. Cette fonctionnalité est essentielle pour travailler avec des fichiers Excel de manière programmatique dans des applications professionnelles.

Démarrage rapide : Ajouter un lien hypertexte avec IronXL en quelques étapes

Cet exemple montre à quel point il est facile d'ajouter un lien hypertexte Web à une cellule Excel à l'aide d'IronXL. En quelques lignes - créer le classeur, définir la valeur de la cellule, assigner l'hyperlien et enregistrer - vous disposerez d'un lien interactif dans votre feuille de calcul. Pour une manipulation plus complète d'Excel, explorez notre guide sur l'édition de fichiers Excel en C#.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronXL avec le gestionnaire de packages NuGet

    PM > Install-Package IronXL.Excel

  2. Copiez et exécutez cet extrait de code.

    IronXL.WorkBook workbook = IronXL.WorkBook.Create(IronXL.ExcelFileFormat.XLSX);
    workbook.DefaultWorkSheet.GetCellAt(0, 0).Value = "Visit IronXL Docs";
    workbook.DefaultWorkSheet.GetCellAt(0, 0).Hyperlink = "https://ironsoftware.com";
    workbook.SaveAs("hyperlink_quick.xlsx");
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronXL dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer

Quels sont les prérequis ?

Avant de mettre en œuvre les hyperliens, assurez-vous que vous avez installé IronXL for .NET dans votre projet .NET. Vous devrez également posséder des connaissances de base sur la sélection de plages et la gestion des feuilles de calcul dans IronXL. La bibliothèque prend en charge .NET Framework 4.6.2+ et .NET Core/5/6/7/8+, ce qui la rend compatible avec la plupart des applications .NET modernes.


Comment créer des liens hypertextes URL dans des cellules Excel?

La propriété Hyperlink existe dans la classe Cell . Le code worksheet["A1"] renvoie un objet Range ; utilisez la méthode First pour accéder à la première cellule de la plage.

Vous pouvez également accéder directement à la cellule à l'aide de la méthode GetCellAt, ce qui vous permet d'accéder directement à la propriété Hyperlink. Cette approche est particulièrement utile lorsque vous travaillez avec des coordonnées de cellules spécifiques dans vos feuilles de calcul.

Explorons un exemple de création de liens hypertextes. Les protocoles HTTP et HTTPS sont tous deux pris en charge, ce qui vous permet d'établir des liens avec des ressources web sécurisées ou non. Lorsque vous créez des liens hypertextes, pensez à les combiner avec formatage de cellule pour les distinguer visuellement du texte normal.

AvertissementL'utilisation de la méthode GetCellAt pour sélectionner une cellule non modifiée lèvera une exception System.NullReferenceException : " La référence d'objet n'est pas définie à une instance d'un objet. "

:path=/static-assets/excel/content-code-examples/how-to/hyperlinks-set-link-hyperlink.cs
using IronXL;

WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Modify the cell's property
workSheet["A1"].Value = "Link to ironpdf.com";

// Set hyperlink at A1 to https://ironpdf.com/
workSheet.GetCellAt(0, 0).Hyperlink = "https://ironpdf.com/";

workBook.SaveAs("setLinkHyperlink.xlsx");
$vbLabelText   $csharpLabel

Qu'est-ce qui se passe quand je clique sur l'hyperlien créé?

Lorsque vous cliquez sur un hyperlien créé avec IronXL, Excel vous invite à ouvrir l'URL liée dans votre navigateur web par défaut. La cellule conserve sa valeur originale tout en ajoutant la fonctionnalité de lien hypertexte, ce qui vous permet de préserver le texte descriptif tout en permettant la navigation. Ce comportement est cohérent, qu'il s'agisse de travailler avec des fichiers Excel localement ou de déployer dans des environnements en nuage.

Excel spreadsheet showing 'Link to rongdf.com' text in cell A1, demonstrating hyperlink creation setup

Comment créer des liens hypertextes entre différentes feuilles de calcul ?

Pour créer un lien hypertexte vers une cellule de la même feuille de calcul, utilisez l'adresse de la cellule, par exemple Z20. Pour créer un lien hypertexte entre des feuilles de calcul, utilisez la convention d'adresse nom de la feuille de calcul!adresse. Par exemple, Sheet2!A1. Cette capacité de liaison entre les feuilles de calcul est essentielle lors de l'élaboration de rapports Excel complexes comportant plusieurs feuilles de données.

Les cellules à nom défini peuvent avoir une portée globale ou une portée de feuille de calcul. Pour créer un lien hypertexte vers un nom défini dans la même feuille de calcul ou un nom défini dans un classeur, spécifiez le nom directement. Pour créer un lien hypertexte pour un nom défini avec une portée de feuille de calcul sur une autre feuille de calcul, spécifiez le nom de la feuille de calcul comme indiqué ci-dessus. Par exemple, Sheet2!Iron. En savoir plus sur l'utilisation des plages nommées pour l'automatisation avancée d'Excel.

:path=/static-assets/excel/content-code-examples/how-to/hyperlinks-set-hyperlink-across-worksheet.cs
using IronXL;
using System.Linq;

WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet workSheet1 = workBook.CreateWorkSheet("Sheet1");
WorkSheet workSheet2 = workBook.CreateWorkSheet("Sheet2");

// Create workbook(global) define name
workSheet1["D5"].SaveAsNamedRange("Iron", true);

// Create worksheet define name
workSheet2["D10"].SaveAsNamedRange("Hello", false);

// --== Within the same worksheet ==--
// Set hyperlink to cell Z20
workSheet1["A1"].Value = "Z20";
workSheet1["A1"].First().Hyperlink = "Z20";

// Set hyperlink to define name "Iron"
workSheet1["A2"].Value = "Iron";
workSheet1["A2"].First().Hyperlink = "Iron";

// --== Across worksheet ==--
// Set hyperlink to cell A1 of Sheet2
workSheet1["A3"].Value = "A1 of Sheet2";
workSheet1["A3"].First().Hyperlink = "Sheet2!A1";

// Set hyperlink to define name "Hello" of Sheet2
workSheet1["A4"].Value = "Define name Hello of Sheet2";
workSheet1["A4"].First().Hyperlink = "Sheet2!Hello";

workBook.SaveAs("setHyperlinkAcrossWorksheet.xlsx");
$vbLabelText   $csharpLabel

Pourquoi utiliser des plages nommées pour les hyperliens?

Les plages nommées fournissent des liens hypertextes plus faciles à maintenir qui survivent à la restructuration des feuilles de calcul. Lorsque vous renommez ou déplacez des cellules, les liens hypertextes pointant vers les plages nommées sont automatiquement mis à jour, ce qui réduit le nombre de liens brisés dans vos applications Excel. Cette approche est particulièrement utile dans les rapports dynamiques où la position des données peut changer.

Excel worksheet showing hyperlink setup with 'A1 of Sheet2' reference and defined name for cross-sheet linking

Quelle est la différence entre le champ d'application d'un cahier de travail et celui d'une feuille de travail ?

Les plages nommées de la portée du classeur (globale) sont accessibles à partir de n'importe quelle feuille de calcul du classeur, tandis que les noms de la portée de la feuille de calcul ne sont accessibles qu'à l'intérieur de leur feuille de calcul spécifique. Lors de la création d'hyperliens vers des plages nommées, les noms d'étendue du classeur offrent plus de flexibilité, mais les noms d'étendue de la feuille de calcul offrent une meilleure encapsulation pour les données spécifiques à la feuille. Cette distinction devient cruciale lorsqu'il s'agit de gérer plusieurs feuilles de calcul dans des applications Excel complexes.


Comment créer des liens hypertextes vers des fichiers, des sites FTP et des courriels ?

En plus des types de liens hypertextes mentionnés précédemment, IronXL prend également en charge la création de liens hypertextes FTP, de fichiers et de messagerie électronique. Ces types d'hyperliens spécialisés étendent vos capacités d'automatisation Excel au-delà des simples liens web.

  • FTP : commençant par ftp:// - Liens vers des fichiers sur des serveurs FTP
  • Fichier : Spécifiez un chemin absolu commençant par file:/// - Liens vers des fichiers locaux ou de réseau
  • Courriel : Commençant par mailto: - Crée des adresses électroniques cliquables

Veuillez noterLes liens hypertextes FTP et de fichiers nécessitent l'utilisation de chemins absolus.

:path=/static-assets/excel/content-code-examples/how-to/hyperlinks-set-other-hyperlink.cs
using IronXL;
using System.Linq;

WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Set hyperlink to open file sample.xlsx
workSheet["A1"].Value = "Open sample.xslx";
workSheet["A1"].First().Hyperlink = "ftp://C:/Users/sample.xlsx";

// Set hyperlink to open file sample.xlsx
workSheet["A2"].Value = "Open sample.xslx";
workSheet["A2"].First().Hyperlink = "file:///C:/Users/sample.xlsx";

// Set hyperlink to email example@gmail.com
workSheet["A3"].Value = "example@gmail.com";
workSheet["A3"].First().Hyperlink = "mailto:example@gmail.com";

workBook.SaveAs("setOtherHyperlink.xlsx");
$vbLabelText   $csharpLabel

Quand dois-je utiliser des hyperliens vers des fichiers ou des hyperliens vers des sites FTP?

Utilisez des liens hypertextes vers des fichiers (file:///) pour les fichiers locaux ou les partages réseau accessibles via le système de fichiers Windows. Les hyperliens FTP (ftp://) sont idéaux pour créer des liens vers des fichiers sur des serveurs FTP, en particulier dans les environnements d'entreprise où les documents sont stockés sur des serveurs de fichiers dédiés. Tenez compte des implications en matière de sécurité lorsque vous utilisez des liens FTP, car ils peuvent transmettre des informations d'identification en texte clair.

Other Types of Hyperlinks

Quel client de messagerie s'ouvre lorsque l'on clique sur des liens Mailto ?

Lorsque les utilisateurs cliquent sur les liens mailto dans Excel, leur client de messagerie par défaut s'ouvre avec un nouveau message pré-adressé à l'adresse e-mail spécifiée. Cette traduction fonctionne avec Outlook, Thunderbird et les clients de messagerie en ligne configurés par défaut. You can enhance mailto links with subject lines and body text using standard mailto syntax: code>mailto:example@gmail.com?subject=Hello&body=Message.


Comment supprimer les hyperliens des cellules Excel?

To remove a hyperlink, invoke the RemoveHyperlink method. Cette méthode est accessible depuis l'objet cellule. La suppression des hyperliens est utile lors du nettoyage des données ou de la conversion de rapports liés en documents statiques.

:path=/static-assets/excel/content-code-examples/how-to/hyperlinks-remove-hyperlink.cs
using IronXL;
using System.Linq;

WorkBook workBook = WorkBook.Load("setLinkHyperlink.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Remove hyperlink
workSheet["A1"].First().RemoveHyperlink();

workBook.SaveAs("removeHyperlink.xlsx");
$vbLabelText   $csharpLabel

La suppression d'un lien hypertexte efface-t-elle le contenu de la cellule ?

Non, la suppression d'un lien hypertexte préserve la valeur et le formatage de la cellule. Seule la fonctionnalité de lien hypertexte est supprimée, laissant le texte affiché intact. Il est ainsi possible de supprimer des hyperliens sans perte de données, ce qui est particulièrement important lors de la conversion de types de fichiers de feuilles de calcul ou de la préparation de documents pour l'archivage.

Comment supprimer plusieurs hyperliens à la fois?

Pour supprimer efficacement plusieurs hyperliens, il faut itérer sur une plage de cellules ou utiliser LINQ pour traiter les cellules contenant des hyperliens :

// Remove all hyperlinks in column A
for (int i = 1; i <= 10; i++)
{
    var cell = workSheet.GetCellAt(i, 0);
    if (cell != null && !string.IsNullOrEmpty(cell.Hyperlink))
    {
        cell.RemoveHyperlink();
    }
}
// Remove all hyperlinks in column A
for (int i = 1; i <= 10; i++)
{
    var cell = workSheet.GetCellAt(i, 0);
    if (cell != null && !string.IsNullOrEmpty(cell.Hyperlink))
    {
        cell.RemoveHyperlink();
    }
}
$vbLabelText   $csharpLabel

Cette approche est particulièrement utile pour nettoyer les données importées ou préparer des feuilles de calcul à distribuer lorsque les liens hypertextes ne sont pas appropriés. Pour des techniques de manipulation de cellules plus avancées, consultez notre guide sur la sélection et l'utilisation de plages.

Questions Fréquemment Posées

Comment créer un lien hypertexte dans Excel à l'aide de C# ?

Vous pouvez facilement créer des liens hypertextes dans Excel à l'aide d'IronXL.Excel en accédant à une cellule et en définissant sa propriété Hyperlink. Il suffit de charger ou de créer un classeur, d'obtenir la cellule souhaitée à l'aide de GetCellAt() ou de l'indexeur de la feuille de calcul, puis d'affecter une chaîne URL à la propriété Hyperlink de la cellule. IronXL gère automatiquement tout le formatage complexe d'Excel sans nécessiter d'interopérabilité avec Microsoft.

Quels types de liens hypertextes peuvent être créés dans les cellules d'Excel ?

IronXL prend en charge la création de différents types d'hyperliens, notamment : les URL de sites web externes, les chemins d'accès aux fichiers pour ouvrir des fichiers locaux ou FTP, les adresses électroniques avec des liens mailto, les références de cellules au sein d'une même feuille de calcul et les références à des cellules à nom défini. Tous ces types d'hyperliens peuvent être mis en œuvre à l'aide de la même propriété Hyperlink dans IronXL.

Dois-je installer Microsoft Office pour ajouter des hyperliens aux fichiers Excel ?

Non, IronXL fonctionne de manière indépendante, sans nécessiter d'assemblages Microsoft Office ou Interop. La bibliothèque comprend tous les composants nécessaires pour créer, lire et modifier des fichiers Excel avec des hyperliens directement dans votre application .NET, ce qui la rend idéale pour les environnements de serveur où l'installation d'Office n'est pas possible.

Quels sont les frameworks .NET pris en charge pour la création d'hyperliens Excel ?

IronXL prend en charge un large éventail de frameworks .NET, notamment .NET Framework 4.6.2 et supérieur, ainsi que .NET Core, .NET 5, 6, 7 et 8+. Cette large compatibilité garantit que vous pouvez intégrer la fonctionnalité de lien hypertexte d'IronXL à la fois dans les applications héritées et dans les projets .NET modernes.

Puis-je ajouter des hyperliens à des fichiers Excel existants ou seulement à de nouveaux fichiers ?

IronXL vous permet d'ajouter des hyperliens aux fichiers Excel nouveaux et existants. Vous pouvez charger un classeur existant à l'aide de WorkBook.Load(), accéder à n'importe quelle cellule ou plage et ajouter des hyperliens sans affecter le contenu ou le formatage de la feuille de calcul. La bibliothèque préserve les données existantes tout en ajoutant de nouveaux éléments interactifs.

Comment puis-je accéder à une cellule spécifique pour ajouter un lien hypertexte ?

IronXL propose plusieurs façons d'accéder aux cellules pour y ajouter des hyperliens. Vous pouvez utiliser GetCellAt() avec des indices de ligne et de colonne, ou utiliser l'indexeur de la feuille de calcul avec des adresses de cellule comme worksheet["A1"]. Pour les plages, utilisez la méthode First pour obtenir la première cellule. La bibliothèque prend également en charge la sélection de plages pour les opérations d'hyperliens par lots.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 1,802,965 | Version : 2025.12 vient de sortir