チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
ハイパーリンクは、Excel ファイルにおいて重要な要素であり、外部データソースへの参照やワークシート間の移動、特定のセルに関する追加情報の提供を可能にします。Excel ファイルを操作する際、さまざまな理由でハイパーリンクを操作する必要があるかもしれません。たとえば、ファイル内のすべてのハイパーリンクを抽出して分析を行ったり、正確性を保つために古いハイパーリンクを修正したり、ファイルの使いやすさを向上させるために壊れたハイパーリンクを削除したりすることが考えられます。本記事では、Spire.XLS for .NET を使用して C# で Excel ファイルのハイパーリンクを抽出、変更、および削除する方法を説明します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Excel ワークブックから他のシステム(例えばデータベース)にデータを移行する際、そのデータに関連付けられたハイパーリンクを保持する必要がある場合、事前にハイパーリンクを抽出することが必要です。以下の手順で、C# で Spire.XLS for .NET を使用して Excel ファイルからハイパーリンクを抽出する方法を示します。
using Spire.Xls;
using Spire.Xls.Collections;
using Spire.Xls.Core.Spreadsheet;
using System.IO;
using System.Text;
namespace ExtractHyperlinks
{
internal class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを初期化
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.LoadFromFile("Links.xlsx");
//最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
//ワークシート内のすべてのハイパーリンクのコレクションを取得
HyperLinksCollection hyperLinks = sheet.HyperLinks;
//StringBuilderクラスのインスタンスを初期化
StringBuilder sb = new StringBuilder();
//コレクション内のハイパーリンクを繰り返し処理
foreach (XlsHyperLink hyperlink in hyperLinks)
{
//ハイパーリンクのアドレスを取得
string address = hyperlink.Address;
//ハイパーリンクのタイプを取得
HyperLinkType type = hyperlink.Type;
//StringBuilderインスタンスにハイパーリンクのアドレスとタイプを追加
sb.AppendLine("リンクアドレス: " + address);
sb.AppendLine("リンクタイプ: " + type.ToString());
sb.AppendLine();
}
//StringBuilderインスタンスの内容をテキストファイルに書き込む
File.WriteAllText("output/Excelのハイパーリンクを取得.txt", sb.ToString());
workbook.Dispose();
}
}
}
誤ったリソースにリンクしてしまったり、ハイパーリンク作成時に URL を間違えて入力した場合、ハイパーリンクを修正して誤りを正す必要があります。以下の手順で、Excel ファイル内の既存のハイパーリンクを変更する方法を示します。
using Spire.Xls;
using Spire.Xls.Collections;
using Spire.Xls.Core.Spreadsheet;
namespace ModifyHyperlinks
{
internal class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを初期化
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.LoadFromFile("Links.xlsx");
//最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
//ワークシート内のすべてのハイパーリンクのコレクションを取得
HyperLinksCollection links = sheet.HyperLinks;
//ハイパーリンクを取得
XlsHyperLink hyperLink = links[3];
//ハイパーリンクの表示テキストとアドレスを変更
hyperLink.TextToDisplay = "ビングを訪問";
hyperLink.Address = "http://www.bing.com/";
//結果ファイルを保存
workbook.SaveToFile("output/Excelのハイパーリンクを変更.xlsx");
workbook.Dispose();
}
}
}
不要なハイパーリンクを削除することで、ワークシートをより整然とし、プロフェッショナルな印象にすることができます。以下の手順で、Excel ファイルから特定のハイパーリンクを削除する方法を示します。
using Spire.Xls;
namespace RemoveHyperlinks
{
internal class Program
{
static void Main(string[] args)
{
//Workbookクラスのインスタンスを初期化
Workbook workbook = new Workbook();
//Excelファイルを読み込む
workbook.LoadFromFile("Links.xlsx");
//最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
//最初のハイパーリンクを削除し、表示テキストを保持
sheet.HyperLinks.RemoveAt(0);
//セルのすべての内容を削除
//sheet.Range["B2"].ClearAll();
//結果ファイルを保存
workbook.SaveToFile("output/Excelからハイパーリンクを削除.xlsx", ExcelVersion.Version2013);
workbook.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
Excel におけるハイパーリンクとは、クリック可能なテキストや画像のことで、特定の場所(ウェブページ、既存のファイル、メールアドレス、または現在のブック内の別のセル)に移動するために使用されます。本記事では、Spire.XLS for .NET ライブラリを使用して、C# で Excel ファイルにハイパーリンクを追加する方法をご紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Excel ファイルにテキストハイパーリンクを追加する手順は以下の通りです:
using Spire.Xls;
namespace AddTextHyperlinks
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成
Workbook workbook = new Workbook();
//最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
//ウェブページにリンクするテキストハイパーリンクを追加
CellRange cell1 = sheet.Range["B3"];
HyperLink urlLink = sheet.HyperLinks.Add(cell1);
urlLink.Type = HyperLinkType.Url;
urlLink.TextToDisplay = "ウェブサイトへのリンク";
urlLink.Address = "https://www.google.com/";
//メールアドレスにリンクするテキストハイパーリンクを追加
CellRange cell2 = sheet.Range["E3"];
HyperLink mailLink = sheet.HyperLinks.Add(cell2);
mailLink.Type = HyperLinkType.Url;
mailLink.TextToDisplay = "メールアドレスへのリンク";
mailLink.Address = "mailto:abc @outlook.com";
//外部ファイルにリンクするテキストハイパーリンクを追加
CellRange cell3 = sheet.Range["B7"];
HyperLink fileLink = sheet.HyperLinks.Add(cell3);
fileLink.Type = HyperLinkType.File;
fileLink.TextToDisplay = "外部ファイルへのリンク";
fileLink.Address = "C:\\Users\\Administrator\\Desktop\\Report.xlsx";
//別のシートのセルにリンクするテキストハイパーリンクを追加
CellRange cell4 = sheet.Range["E7"];
HyperLink linkToSheet = sheet.HyperLinks.Add(cell4);
linkToSheet.Type = HyperLinkType.Workbook;
linkToSheet.TextToDisplay = "シート2のセルへのリンク";
linkToSheet.Address = "Sheet2!B5";
//UNCアドレスにリンクするテキストハイパーリンクを追加
CellRange cell5 = sheet.Range["B11"];
HyperLink uncLink = sheet.HyperLinks.Add(cell5);
uncLink.Type = HyperLinkType.Unc;
uncLink.TextToDisplay = "UNCアドレスへのリンク";
uncLink.Address = "\\\\192.168.0.121";
//列幅を自動調整
sheet.AutoFitColumn(2);
sheet.AutoFitColumn(5);
//結果ファイルを保存
workbook.SaveToFile("output/Excelにテキストハイパーリンクを挿入.xlsx", ExcelVersion.Version2013);
workbook.Dispose();
}
}
}
Excel ファイルに画像のハイパーリンクを追加する手順は以下の通りです:
using Spire.Xls;
namespace AddImageHyperlinks
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成
Workbook workbook = new Workbook();
//最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
//ワークシートに画像を挿入
ExcelPicture picture = sheet.Pictures.Add(5, 3, "Logo.png");
//画像にハイパーリンクを追加
picture.SetHyperLink("https://www.e-iceblue.com", true);
//結果ファイルを保存
workbook.SaveToFile("output/Excelに画像のハイパーリンクを挿入.xlsx", ExcelVersion.Version2013);
workbook.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。