Is it possible to stop staking macro-actions to undo lists ?

K

kato

Hi,

I have a problem at the processing speed of my macro. The update of a large
amount of task is executed by the loop processing, and I want to stop the
stack processing expressly.

(The macro described in BeforeClose called by "[File]>[Close] menu" is not
stacked...)

Can anyone explain how to stop staking? Thanks in advance.
 
R

Rod Gill

What problems are you experiencing, is it just speed? If so try setting
calculation to manual at the start of the macro then turn on at the end.

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com
 
K

kato

Thanks for your help Rod.
Of course, I have been coding for speed.
(that is,
- calculation option off/on
- screenupdating off/on
- not use variant type
- use with/end with statement
- cast of specified variable type etc.)

Moreover, I am verifying the same program even by 2003 versions. The program
of 2003 ends earlier than 2007. I think that the Multi-Undo function that is
the new features included of 2007 influences the difference at this
processing time. Therefore, I am looking for the method of stopping the stack
processing for the Multi-Undo function specifying it.
( It is because it was found that the content of Undo List was different
according to the difference of how to call the macro. )

.... The project that has inserted about ten subprojects with about 500 tasks
is a processing object. In a word, the macro calculates about 5000 tasks are
rolled up.

Isn't there something good idea?



Rod Gill said:
What problems are you experiencing, is it just speed? If so try setting
calculation to manual at the start of the macro then turn on at the end.

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com



kato said:
Hi,

I have a problem at the processing speed of my macro. The update of a
large
amount of task is executed by the loop processing, and I want to stop the
stack processing expressly.

(The macro described in BeforeClose called by "[File]>[Close] menu" is not
stacked...)

Can anyone explain how to stop staking? Thanks in advance.
 
R

Rod Gill

In 2007 you can start a macro transaction so all macro actions can be undone
in one go. This gives Project less data to store for the undo action which
might be quicker. You could also try setting the number of undo levels to 1
before the macro runs then reset to 20 afterwards. This would of course
delete all previous actions from the undo queue.

There are no settings for controlling what is or is not stacked.

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com



kato said:
Thanks for your help Rod.
Of course, I have been coding for speed.
(that is,
- calculation option off/on
- screenupdating off/on
- not use variant type
- use with/end with statement
- cast of specified variable type etc.)

Moreover, I am verifying the same program even by 2003 versions. The
program
of 2003 ends earlier than 2007. I think that the Multi-Undo function that
is
the new features included of 2007 influences the difference at this
processing time. Therefore, I am looking for the method of stopping the
stack
processing for the Multi-Undo function specifying it.
( It is because it was found that the content of Undo List was different
according to the difference of how to call the macro. )

... The project that has inserted about ten subprojects with about 500
tasks
is a processing object. In a word, the macro calculates about 5000 tasks
are
rolled up.

Isn't there something good idea?



Rod Gill said:
What problems are you experiencing, is it just speed? If so try setting
calculation to manual at the start of the macro then turn on at the end.

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com



kato said:
Hi,

I have a problem at the processing speed of my macro. The update of a
large
amount of task is executed by the loop processing, and I want to stop
the
stack processing expressly.

(The macro described in BeforeClose called by "[File]>[Close] menu" is
not
stacked...)

Can anyone explain how to stop staking? Thanks in advance.
 
K

kato

Thank you Rod.
The transaction and the Undo-levels-1 have already done the programming. So,
I think that I review the design so that a large amount of data is not
processed at a time.

Many thanks
kato


Rod Gill said:
In 2007 you can start a macro transaction so all macro actions can be undone
in one go. This gives Project less data to store for the undo action which
might be quicker. You could also try setting the number of undo levels to 1
before the macro runs then reset to 20 afterwards. This would of course
delete all previous actions from the undo queue.

There are no settings for controlling what is or is not stacked.

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com



kato said:
Thanks for your help Rod.
Of course, I have been coding for speed.
(that is,
- calculation option off/on
- screenupdating off/on
- not use variant type
- use with/end with statement
- cast of specified variable type etc.)

Moreover, I am verifying the same program even by 2003 versions. The
program
of 2003 ends earlier than 2007. I think that the Multi-Undo function that
is
the new features included of 2007 influences the difference at this
processing time. Therefore, I am looking for the method of stopping the
stack
processing for the Multi-Undo function specifying it.
( It is because it was found that the content of Undo List was different
according to the difference of how to call the macro. )

... The project that has inserted about ten subprojects with about 500
tasks
is a processing object. In a word, the macro calculates about 5000 tasks
are
rolled up.

Isn't there something good idea?



Rod Gill said:
What problems are you experiencing, is it just speed? If so try setting
calculation to manual at the start of the macro then turn on at the end.

--

Rod Gill
Microsoft MVP for Project

Author of the only book on Project VBA, see:
http://www.projectvbabook.com



Hi,

I have a problem at the processing speed of my macro. The update of a
large
amount of task is executed by the loop processing, and I want to stop
the
stack processing expressly.

(The macro described in BeforeClose called by "[File]>[Close] menu" is
not
stacked...)

Can anyone explain how to stop staking? Thanks in advance.
 

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