Excelは、大規模なデータセット、データの視覚化、およびデータの統計分析を操作するための例外的なツールです。 Excelで詳細なデータレポートを作成している間、特定のデータは、同じワークブックの別のワークシートの外部データソース、Webページ、電子メールアドレス、ターゲットの場所にリンクする必要がある場合があります。 Microsoft Excelは、これらすべてのハイパーリンクオプションを提供します。 .NETアプリケーション開発者として、C#/VB.NETアプリケーションでハイパーリンク機能を提供することに興味があるかもしれません。この記事に示すように、 c# または vb.net を使用して、アプリケーションでNPOI APIを使用してこれを達成できます。
Microsoft Excelにハイパーリンクを追加する方法
Microsoft Excelでは、ワークブックにさまざまなハイパーリンクを作成できます。これらには以下が含まれます:
- テキストをURLにリンクします
- テキストをメールアドレスにリンクします
- ワークブック内の特定の場所にハイパーリンクを作成する
- 既存のファイルにリンクします Excelファイルでハイパーリンクを作成するための独自のコードを作成する前に、MicrosoftExcelを使用してこれらがどのように作成されるかを最初に見てみましょう
Microsoft Excelを使用してハイパーリンクを作成する手順
次の手順を使用して、Excelファイルでハイパーリンクを作成できます。
既存のファイルへのリンクをWebページへのリンク
1.ワークシートで、リンクを作成するセルをクリックします。 2. 挿入 タブ、 links グループで、[ link ]をクリックします 3.リンクで、既存のファイルまたはWebページをクリックします。
- ファイルを選択するには、[現在のフォルダー]をクリックし、リンクするファイルをクリックします。 * Look-Inリストで別のフォルダーを選択して、現在のフォルダーを変更できます。 * Webページを選択するには、[参照されたページ]をクリックしてから、リンクするWebページをクリックします。
- 最近使用したファイルを選択するには、最近のファイルをクリックしてから、リンクするファイルをクリックします。
- リンクする既知のファイルまたはWebページの名前と場所を入力するには、アドレスボックスにその情報を入力します。 * Webページを見つけるには、[Webを参照]をクリックし、リンクするWebページを開き、ブラウザを閉じることなくExcelに戻ります。
メールアドレスへのリンクを作成
Excelのメールアドレスにハイパーリンクするには、次の手順に従うことができます。
- Excelスプレッドシートを開き、ハイパーリンクを作成するセルに移動します。 2.セルを選択し、右クリックします。コンテキストメニューから「ハイパーリンク」を選択します。または、Excelリボンの[挿入]タブをクリックして、[ハイパーリンク]ボタンをクリックすることもできます。
- [ハイパーリンクの挿入]ダイアログボックスが表示されます。左ペインで、「メールアドレス」を選択します。 4.「電子メールアドレス」フィールドに、ハイパーリンクするメールアドレスを入力します。たとえば、「mailto:example@example.com」を入力できます(「example@example.com」を希望のメールアドレスに置き換えます)。 5.オプションで、「表示するテキスト」フィールドのハイパーリンク用に表示されるフレンドリーな名前またはテキストを入力できます。これは、「電子メールの送信」や実際のメールアドレス自体のようなものです。
- [OK]ボタンをクリックして、ハイパーリンクを作成します。 7.セルがハイパーリンクとしてメールアドレスを表示するようになりました。それをクリックすると、デフォルトの電子メールクライアントが、指定されたメールアドレスに新しい電子メールアドレスで開きます。
ワークブック内の特定の場所へのリンクを作成
Excelのワークブック内の特定の場所へのリンクを作成するには、次の手順を使用できます。
- Excelスプレッドシートを開き、リンクしたいセルまたは範囲に移動します。 2.セルまたは範囲を右クリックして、コンテキストメニューから[コピー]を選択します。または、キーボードのCtrl+Cを押してセルまたは範囲をコピーすることもできます。 3.リンクを作成する場所に移動します。 4.リンクを作成するセルを右クリックして、コンテキストメニューから[ハイパーリンク]を選択します。 Excelリボンの「挿入」タブに移動し、[ハイパーリンク]ボタンをクリックすることもできます。
- [ハイパーリンクの挿入]ダイアログボックスが表示されます。左ペインで、「このドキュメントの配置」を選択します。 6.「セルリファレンスの入力」フィールドでは、Excelはステップ2でコピーしたセルまたは範囲への参照を自動的に表示する必要があります。報復」。たとえば、「Sheet1!A1」または「Sheet2!B2:E5」。 7.オプションで、「表示するテキスト」フィールドにリンクにフレンドリーな名前またはテキストを入力できます。 8.「OK」ボタンをクリックして、ハイパーリンクを作成します。 9.セルは、ワークブック内の特定の場所へのリンクを表示します。それをクリックすると、参照されたセルまたは範囲に直接使用できます。
C#{.wp-block-heading}を使用してExcelにハイパーリンクを追加する方法}
Microsoft Excelを使用してハイパーリンクを追加する方法を確認したので、.NETアプリケーションで同じことができる方法を見てみましょう。この目的のために、オープンソースAPI npoiを.net に使用し、C#でコードを書きます。 しかし、その前に、開始するには.NETプロジェクトにNPOIをインストールする必要があります。これについては、.NET用のNPOIをインストールの詳細な指示ガイドで学ぶことができます。
//Create a workbook object
IWorkbook wb = new XSSFWorkbook();
//Create a worksheet
ISheet sheet = wb.CreateSheet("Hyperlinks");
//Define Cell style for hyperlinks..by default thee are blue and hyperlinked
ICellStyle hlink_style = wb.CreateCellStyle();
IFont hlink_font = wb.CreateFont();
hlink_font.Underline = FontUnderlineType.Single;
hlink_font.Color = HSSFColor.Blue.Index;
hlink_style.SetFont(hlink_font);
ICell cell;
//URL Hyperlink
cell = sheet.CreateRow(0).CreateCell(0);
cell.SetCellValue("URL Link");
XSSFHyperlink link = new XSSFHyperlink(HyperlinkType.Url);
link.Address = ("https://www.fileformat.com/");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
//link to a file in the current directory
cell = sheet.CreateRow(1).CreateCell(0);
cell.SetCellValue("File Link");
link = new XSSFHyperlink(HyperlinkType.File);
link.Address = ("FileFormat.xlsx");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
//e-mail link
cell = sheet.CreateRow(2).CreateCell(0);
cell.SetCellValue("Email Link");
link = new XSSFHyperlink(HyperlinkType.Email);
//note, if subject contains white spaces, make sure they are url-encoded
link.Address = ("mailto:info@fileformat.com?subject=FileForamts");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
//Create a target sheet and cell
ISheet sheet2 = wb.CreateSheet("Sheet2");
sheet2.CreateRow(0).CreateCell(0).SetCellValue("Target ICell");
cell = sheet.CreateRow(3).CreateCell(0);
cell.SetCellValue("Worksheet Link");
link = new XSSFHyperlink(HyperlinkType.Document);
link.Address = ("'Sheet2'!A1");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
using (FileStream sw = File.Create("test.xlsx"))
{
wb.Write(sw, false);
}
結論
この記事では、NPOI APIを使用して.NETアプリケーション内からXLSXファイルにさまざまなタイプのハイパーリンクを追加する方法を示しました。 スプレッドシートにはnpoi APIを使用して、C#/vb.netアプリケーションでAPIを使用することについて詳しく知ることができます。その他の例については、お楽しみに。