View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Dave Dave is offline
external usenet poster
 
Posts: 1,388
Default I need a macro that runs other macros until P5=28

Hi,
You could use a Do Until Loop.

Sub RunRoutines()
Do Until Sheets(1).Range("P5")=28
Call Macro 1
Call Macro 2
Call Macro 3
Call Macro 4
Call Macro 5
Call Macro 6
Call Macro 7
Call Macro 8
Call Macro 9
Loop
Call Call Macro 10
End Sub

If you need to check the value of P5 between each macro run:

Sub RunRoutines()
Do Until Sheets(1).Range("P5")=28
If Sheets(1).Range("P5")=28 Then Call Macro 1 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 2 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 3 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 4 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 5 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 6 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 7 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 8 Else Goto Last
If Sheets(1).Range("P5")=28 Then Call Macro 9 Else Goto Last
Loop
Last:
Call Macro 10
End Sub

Regards - Dave.





"Jeff" wrote:

I need a goMacro that I can tell it when to start to run other macros until
Sheet1 P5=28

I already have the following macros that do basically this (below) but I
have to click a separate buttons for each because I have to stop when the
cell that sums Sheet1 D5:L5 (Sheet1 P5) is equal to or greater than 28. Here
are my macros:

Macro1 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
D5:D6 then delete Sheet1 F1:F2 shift rows up.

Macro2 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
E5:E6 then delete Sheet1 F1:F2 shift rows up.

Macro3 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
F5:F6 then delete Sheet1 F1:F2 shift rows up.

Macro4 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
G5:G6 then delete Sheet1 F1:F2 shift rows up.

Macro5 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
H5:H6 then delete Sheet1 F1:F2 shift rows up.

Macro6 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
I5:I6 then delete Sheet1 F1:F2 shift rows up.

Macro7 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
J5:J6 then delete Sheet1 F1:F2 shift rows up.

Macro8 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
K5:K6 then delete Sheet1 F1:F2 shift rows up.

Macro9 = copy from Sheet2 cells F1:F2 then paste special values in Sheet1
L5:L6 then delete Sheet1 F1:F2 shift rows up.

When Sheet1P5=28 run Macro10

So in other words, I click the goMacro button and Macro1 does its thing. If
Sheet1 P5=28 then run Macro10, otherwise run Macro2 and so forth.

Thank you,
Jeff