Ich habe diese Fehlermeldung -Procedure too large
- in VBA erhalten. Was ist der Grund und der Ausweg für diesen Fehler?
Sie haben wahrscheinlich eine oder mehrere gigantische Prozeduren/Funktionen und ich denke, VBA hat ein Limit von 64k pro Prozedur.
Sie beheben das Problem, indem Sie diese Prozedur in mehrere Prozeduren aufteilen, die dann von der einen Prozedur aufgerufen werden können.
Also anstatt zu haben:
Sub GiantProcedure()
... ' lots and lots of code
End Sub
Sie hätten so etwas wie:
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
Ihre kompilierte Prozedur darf 64 KB nicht überschreiten. Sie sollten es in verschiedene Unterprogramme aufteilen.
Diese Fehlermeldung wird möglicherweise angezeigt, wenn das Makro mit der 64-Bit-Version von Office erstellt wurde. In dem folgenden Artikel finden Sie weitere Details und eine Problemumgehung:
Die Idee von GiantProcedure hat bei mir mit Microsoft PowerPoint 2013 nicht funktioniert. Dann fügte ich vor jedem "proc" einen "Aufruf" hinzu. So was:
Sub GiantProcedure()
Call Proc1()
Call Proc2()
Call Proc3()
End Sub
Jetzt gehts.