Проверьте, содержит ли рабочая книга скрытые внешние ссылки с помощью JavaScript через C++
Contents
[
Hide
]
Возможные сценарии использования
Иногда рабочая книга содержит внешние ссылки, которые скрыты и не отображаются в Microsoft Excel. Aspose.Cells извлекает все внешние ссылки, независимо от их видимости. Однако вы можете проверить свойство ExternalLink.isVisible(), чтобы определить, видна ли внешняя ссылка.
Проверка, содержит ли рабочая книга скрытые внешние ссылки
Следующий пример кода загружает исходный файл Excel, который содержит скрытые внешние ссылки. Эти ссылки не отображаются в Microsoft Excel, но они присутствуют в рабочей книге. После вывода свойств ExternalLink.dataSource и ExternalLink.isReferred(), выводится свойство ExternalLink.isVisible(). В приведённом ниже консольном выводе видно, что все внешние ссылки не видимы.
Образец кода
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example - External Links</title>
</head>
<body>
<h1>External Links Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result" style="white-space: pre-wrap; margin-top: 1em;"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, Worksheet, Cell, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
if (!fileInput.files.length) {
document.getElementById('result').innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
return;
}
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
// Instantiating a Workbook object by loading the selected file
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Access the external link collection of the workbook
const links = workbook.worksheets.externalLinks;
// Print all the external links and check their IsVisible property
let output = '';
for (let i = 0; i < links.count; i++) {
const link = links.get(i);
output += "Data Source: " + link.dataSource + "\n";
output += "Is Referred: " + link.isReferred + "\n";
output += "Is Visible: " + link.isVisible + "\n\n";
console.log("Data Source: " + link.dataSource);
console.log("Is Referred: " + link.isReferred);
console.log("Is Visible: " + link.isVisible);
console.log();
}
document.getElementById('result').textContent = output || 'No external links found.';
});
</script>
</html>
Вывод в консоль
Data Source: C:\International\DDB\FAS 133\Swap Rates\GS_1M_3M_1_2_5_¥$_(B)IRSwaps_0400.xls
Is Referred: True
Is Visible: False
Data Source: C:\DIST DAY\MAY TEMPLATES\030601t.xls
Is Referred: True
Is Visible: False
Data Source: C:\AREVIEW\2002 Controllable\Autobrct.xls
Is Referred: True
Is Visible: False
Data Source: C:\CARDSFO\Main Files\Rate Forecast\FY 11\IFR 11 01 (New Model REPORTS 11.08.07).xls
Is Referred: True
Is Visible: False