正在编译Office VBA宏?

时间:2013-07-10 06:42:51

标签: vba ms-office

我试图弄清楚在Microsoft Office中运行的VBA代码是否正在编译(对于像MSIL这样的中间语言),还是基于解释器的语言解释VBA本身。

我试图在网上找到一个直接的答案,可以找到任何清楚的答案。我试图找到一个“编译”VBA的API,但我确实找到了(这并不意味着代码没有被编译)。

有没有人知道内幕发生了什么,或者至少知道如何检查它?

1 个答案:

答案 0 :(得分:5)

我不确定这是不是你明确要找的,但我设法找到了......

  

“用VBA编写的代码编译为专有的中间语言,称为P代码(打包代码),托管应用程序(Access,Excel,Word,Outlook和PowerPoint)作为COM结构化存储文件中的单独流存储(例如,.doc或.xls)独立于文档流。然后由虚拟机(由托管应用程序托管)执行[1]中间代码。“

来自以下维基页面..

http://en.wikipedia.org/wiki/Visual_Basic_for_Applications

有关P-Code的更多信息..

http://en.wikipedia.org/wiki/Microsoft_P-Code

希望这有帮助!