我需要使用 C# 客户端浏览数百个 Excel 文件以找到那些具有宏的文件。
我已经尝试使用此处接受的答案中的代码:
Using Interop.Excel to check if Excel file contains VBA Macros
但是,此代码首先打开文件。即使在添加 _appExcel.DisplayAlerts = false
它也很慢。有没有更好的方法来解决这个问题,最好不要先打开 Excel 文件?
我在 MSDN 上查找了有关 Excel 互操作的文档:HasVBProject但没有我可以使用的示例。
最佳答案
试试这个
f = Dir("*.xls*")
While f <> ""
On Error Resume Next
Set wb = Workbooks.Open(f)
If wb.HasVBProject Then
Debug.Print wb.Name & " has macro"
Else
Debug.Print wb.Name & "does not have macro"
End If
wb.Close
f = Dir
Wend
关于c# - 使用 C# 检查 Excel 工作簿是否具有宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41637912/