如何检查工作表是否包含特定宏

How to check if a Worksheet contains a specific macro

在我的小 C# 程序中,我打开了一个 Excel sheet,使用 Excel 互操作到 运行 sheet 中的一个宏:

xlApp.Application.Workbooks.Open(Path.GetFullPath(path).Replace("\"", ""));
xlApp.Application.Run(Macro: macroName);

我只是将用户输入的宏作为字符串 macroName 传递。 不幸的是,如果当前活动工作中不存在宏,程序就会崩溃sheet。 有没有一种方法可以在尝试 运行 之前检查宏,以便为用户提供合适的响应?

找到 this。感谢 Fredrik,这个解决方案对我来说非常有效。