Вставка гиперссылок в Excel или OpenOffice
Добавление гиперссылок
Aspose.Cells позволяет разработчикам добавлять гиперссылки в файлы Excel либо с помощью API, либо через дизайнерские таблицы (таблицы, в которых гиперссылки создаются вручную, а Aspose.Cells используется для их импорта в другие таблицы).
Aspose.Cells предоставляет класс Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит WorksheetCollection, который обеспечивает доступ ко всем листам в файле Excel. Лист представлен классом Worksheet. Класс Worksheet предоставляет различные методы для добавления гиперссылок в файлы Excel.
Добавление ссылки на URL
Класс Worksheet содержит коллекцию getHyperlinks(). Каждый элемент в коллекции getHyperlinks() представляет Hyperlink. Добавляйте гиперссылки на URL, вызывая метод add. Метод 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, вызывая метод add коллекции Hyperlinks. Этот метод работает как для внутренних, так и для внешних гиперссылок. Один из вариантов перегруженного метода принимает следующие параметры:
- Имя ячейки, в которую будет добавлена гиперссылка.
- Количество строк, количество строк в этом диапазоне гиперссылок.
- Количество столбцов, количество столбцов в этом диапазоне гиперссылок.
- 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, вызывая метод add коллекции Hyperlinks. Этот метод принимает следующие параметры:
- Имя ячейки, в которую будет добавлена гиперссылка.
- Количество строк, количество строк в этом диапазоне гиперссылок.
- Количество столбцов, количество столбцов в этом диапазоне гиперссылок.
- 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")); |