VBA code to "reset" application run and empty preserved arrays

K

kate.maunder

Hi,

I've been helping write some VBA code which is executed from a button
on an excel worksheet. Data is read in from the sheet, calculations
are performed in multiple modules (public variables). The problem is
that as some of the arrays which hold the data are dimensioned using
Redim Preserve, which means that when the program ends, the data is
still in the arrays.

If the program is run a 2nd time from the button on the worksheet,
lots of errors are generated in the program, as the arrays are full of
data from the first run. If "reset" is clicked in the VB editor, the
arrays empty & the code runs fine. Is there a way to code this
'reset' button & empty the arrays?

Cheers,
Kate
 
J

John.Greenan

Look in the Excel online help for the keyword "erase" - gets rid of arrays....
 
N

NickHK

Kate,
Whilst I would not recommend it, there is End. However, this is rather
abrupt termination of code and clearing of variable.
Go John's way of explicitly Erasing each array, unless you want to
<probably> cause more problems than it solves with End, which is the code
equivalent of the Reset button.

NickHK
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top