Node.js経由でVBAコードのデジタル署名が有効かどうかを確認
Contents
[
Hide
]
Aspose.Cellsを使用して、VBAコードのデジタル署名が有効かどうかを確認することができます。Workbook.isValidSigned()プロパティを使用すると、署名が有効であればtrueを返し、それ以外の場合はfalseを返します。VBAコードを変更すると、そのデジタル署名は無効になります。
** Node.jsでVBAコードのデジタル署名が有効かどうかを確認**
提供されたリンクからサンプルのExcelファイルをダウンロードし、このプロパティの使用方法を示すコードを実演しています。同じExcelファイルには有効な署名がありますが、VBAコードを変更してワークブックを保存した後、再チェックすると署名が無効になることが分かります。
const path = require("path");
const AsposeCells = require("aspose.cells.node");
// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sampleVBAProjectSigned.xlsm");
// Loads the workbook which contains hidden external links
const workbook = new AsposeCells.Workbook(filePath);
// Signature is valid
console.log("Is VBA Code Project Valid Signed: " + workbook.getVbaProject().isValidSigned());
// Modify the VBA Code, save the workbook then reload
// VBA Code Signature will now be invalid
let code = workbook.getVbaProject().getModules().get(1).getCodes();
code = code.replace("Welcome to Aspose", "Welcome to Aspose.Cells");
workbook.getVbaProject().getModules().get(1).setCodes(code);
// Save
workbook.save(path.join(dataDir, "output_out.xlsm"));
// Reload
workbook = new AsposeCells.Workbook(path.join(dataDir, "output_out.xlsm"));
// Now the signature is invalid
console.log("Is VBA Code Project Valid Signed: " + workbook.getVbaProject().isValidSigned());