VBAコードのデジタル署名が有効かどうかを確認する

PythonでVBAコードのデジタル署名の有効性を確認する方法

提供されたリンクからサンプルのExcelファイルをダウンロードし、このプロパティの使用方法を示すコードを実演しています。同じExcelファイルには有効な署名がありますが、VBAコードを変更してワークブックを保存した後、再チェックすると署名が無効になることが分かります。

from aspose.cells import Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
workbook = Workbook(dataDir + "sampleVBAProjectSigned.xlsm")
# Signature is valid
print("Is VBA Code Project Valid Signed: " + str(workbook.vba_project.is_valid_signed))
# Modify the VBA Code, save the workbook then reload
# VBA Code Signature will now be invalid
code = workbook.vba_project.modules[1].codes
code = code.replace("Welcome to Aspose", "Welcome to Aspose.Cells")
workbook.vba_project.modules[1].codes = code
# Save
workbook.save(dataDir + "output_out.xlsm")
# Reload
workbook = Workbook(dataDir + "output_out.xlsm")
# Now the signature is invalid
print("Is VBA Code Project Valid Signed: " + str(workbook.vba_project.is_valid_signed))