ExcelまたはOpenOfficeにハイパーリンクを挿入する
ハイパーリンクの追加
Aspose.Cellsは、APIまたはデザイナースプレッドシート(手動でハイパーリンクを作成し、それを他のスプレッドシートにインポートするためにAspose.Cellsを使用する)を使って、開発者がExcelファイルにハイパーリンクを追加できるようにします。
Aspose.Cellsは、Microsoft Excelファイルを表すWorkbookクラスを提供します。Workbookクラスには、Excelファイル内の各ワークシートにアクセス可能にするWorksheetCollectionが含まれています。ワークシートはWorksheetクラスで表されます。Worksheetクラスは、Excelファイルにさまざまなハイパーリンクを追加するためのさまざまなメソッドを提供します。
URLへのリンクの追加
Worksheetクラスには、getHyperlinks()コレクションがあります。各アイテムはHyperlinkを表します。getHyperlinks()コレクションのaddメソッドを呼び出すことで、URLへのハイパーリンクを追加できます。addメソッドは、以下のパラメータを取ります。
- セル名、ハイパーリンクが追加されるセルの名前。
- 行数、このハイパーリンク範囲の行数。
- 列数、このハイパーリンク範囲の列数。
- URL、URLアドレス。
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Create directory if it is not already present. | |
const fs = require("fs"); | |
if (!fs.existsSync(dataDir)) { | |
fs.mkdirSync(dataDir); | |
} | |
// Instantiating a Workbook object | |
let workbook = new AsposeCells.Workbook(); | |
// Obtaining the reference of the first worksheet | |
let worksheet = workbook.getWorksheets().get(0); | |
// Adding a hyperlink to a URL at "A1" cell | |
worksheet.getHyperlinks().add("A1", 1, 1, "http://www.aspose.com"); | |
// Saving the Excel file | |
workbook.save(path.join(dataDir, "output.out.xls")); |
同じファイル内のセルへのリンクの追加
Excelファイル内のセルにハイパーリンクを追加することができます。これは、Hyperlinksコレクションのaddメソッドを呼び出すことで実現します。addメソッドは内部リンクと外部リンクの両方に対応しています。オーバーロードされたバージョンの一つは次のパラメータを取ります:
- セル名、ハイパーリンクが追加されるセルの名前。
- 行数、このハイパーリンク範囲の行数。
- 列数、このハイパーリンク範囲の列数。
- URL、対象セルのアドレス。
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Create directory if it is not already present. | |
const fs = require("fs"); | |
if (!fs.existsSync(dataDir)) { | |
fs.mkdirSync(dataDir); | |
} | |
// Instantiating a Workbook object | |
let workbook = new AsposeCells.Workbook(); | |
// Adding a new worksheet to the Workbook object | |
workbook.getWorksheets().add(); | |
// Obtaining the reference of the first (default) worksheet | |
let worksheet = workbook.getWorksheets().get(0); | |
// Adding an internal hyperlink to the "B3" cell of the other worksheet "Sheet2" in | |
// The same Excel file | |
worksheet.getHyperlinks().add("B3", 1, 1, "Sheet2!B9"); | |
// Saving the Excel file | |
workbook.save(path.join(dataDir, "output.out.xls")); |
外部ファイルへのリンクの追加
Excelファイルの外部にハイパーリンクを追加するには、Hyperlinksコレクションのaddメソッドを呼び出します。addメソッドは次のパラメータを取ります:
- セル名、ハイパーリンクが追加されるセルの名前。
- 行数、このハイパーリンク範囲の行数。
- 列数、このハイパーリンク範囲の列数。
- URL、対象のアドレス、外部のExcelファイル。
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Instantiating a Workbook object | |
const workbook = new AsposeCells.Workbook(); | |
// Adding a new worksheet to the Excel object | |
const i = workbook.getWorksheets().add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
const worksheet = workbook.getWorksheets().get(i); | |
// Adding an internal hyperlink to the "B9" cell of the other worksheet "Sheet2" in | |
// The same Excel file | |
worksheet.getHyperlinks().add("A5", 1, 1, path.join(dataDir, "book1.xls")); | |
// Saving the Excel file | |
workbook.save(path.join(dataDir, "output.out.xls")); |