Error after repair




Some processed VBA modules cannot be restored.
The processing of the project cannot be finished with the current settings
or on account of the project size.

But all for a completion necessary data were stored.

This gives you two ways to respond:

2nd attempt

CrunchCode starts a renewed attempt to finish the project.
To this end, the program is restarted.

Such a restart deletes unnecessary information from the memory
and allows in the most cases a fault–free completion of processing.

Reset

The project is reset in its original status.

Attention!
However, thereby all previous processing results will be lost!


Notes:

The modules causing this problem are listed in order of their processing.
This allows you to see where the error first occurred
and to address whatever caused the error.

Such errors can often be overcome by repairing of the project
(Excel CrunchCode menu, function "Repair").

The error "Not enough memory" is often triggered.
If the project has been repaired and the settings have
been changed but this error continues to occur,
then please ask for help at www.CrunchCode.de.

Importand hint:

After such an error, it is recommended to restart Excel!

The error "Not enough memory" can have two causes:


1. The processing generates too many new objects (variables, procedures etc.).

The modules or procedures exceed 64 kB segment limitation
and Excel cannot handle it any more.

Possible remedies:


– Excel project:

– reduce the size of modules by splitting them
  into several smaller modules.

– the same is valid for procedures.

– reduce the number of the "Public" declarations. Try to declare
  as many identifiers as possible as local or private.


– CrunchCode processing level "Changing code structure":

If the option "Line numbering" enabled, then this results
in a significant additional memory requirements!

Avoid, if possible, this function.

– CrunchCode processing level "Camouflaging names/project":

Deselecting the camouflaging of "Numbers, VBA const."
reduces the number of additional declarations.


– CrunchCode processing level "Encrypting strings":

In most cases reducing the number of character strings
to be camouflaged will result in success.
Activate "only selected" and/or
increase the value for "min. length" to exclude a large number
of very short character strings from the camouflage.

Consider excluding additional character strings from being camouflaged by use
of the exclusion criteria in the area "NO ENCRYPTION IF...".

It is possible "NO runtime decoding" is enabled, resulting in
a large number of additional variables that must be declared globally.

If "NO runtime decoding" required,
then activate "use a global array".
Thus all character strings are stored in just one global variable.

Deactivate "Each occurrence = new masked name".
This reduces the number of additional constants generated.

Reduce the number of character strings
to be camouflaged by using exclusion criteria (minimum length etc.).


– CrunchCode processing level "Additional procedures":

If possible, deselect this entire processing level.
Thus, no commands are stored in additional procedures.


2. Physical and virtual memory are not sufficient

Close all files and programs that are not necessary
and start the processing again.
If possible, increase the virtual memory.