过程太大过程太大(Procedure Too Large)

2019-05-12 06:53发布

我收到此错误信息- Procedure too large -在VBA。 什么是这个错误的原因和出路?

Answer 1:

你可能有一个或多个巨大的过程/函数,我认为VBA具有每过程64K或某事的限制。

您可以通过拆分该程序为多个程序,然后可以通过一个程序被称为修复它。

因此,而不是有:

 Sub GiantProcedure()
      ... ' lots and lots of code
 End Sub

你会碰到这样的:

 Sub GiantProcedure()
      ... ' a little bit of common code
      Proc1()
      Proc2()
      Proc3()

 End Sub

 Sub Proc1()
      ... ' quite a bit of code
 End Sub

 Sub Proc2()
      ... ' quite a bit of code
 End Sub

 Sub Proc3()
      ... ' quite a bit of code
 End Sub


Answer 2:

你的编译过程不能超过64KB。 你应该把它分解成不同的子例程。

http://msdn.microsoft.com/en-us/library/Aa264541



Answer 3:

如果宏已使用Office的64位版本中创建您可能会收到此错误信息。 有关进一步的细节和解决方法下面的文章:

“编译错误:程序太大”错误消息,当您尝试在Office 2010程序的32位版本上运行VBA宏



Answer 4:

GiantProcedure的想法并没有为我工作,使用微软Powerpoint 2013年之后我加入了每个“PROC”前“呼”。 像这样:

Sub GiantProcedure()

  Call Proc1()
  Call Proc2()
  Call Proc3()

End Sub

现在,它的工作原理。



文章来源: Procedure Too Large