How to chain VBA applications

G

Guest

Is there anyway these 2 codes can be chained to execute consecutively
Other than by Application.Run….…If possible, I do not want to change
the original codes. Thank You.
' SALES Macro
' Macro recorded 4/25/2006

Dim i As Long
For i = 10201 To 10320 Step 8
Cells(i, "J").Resize(7).FormulaR1C1 = _
"=SUMPRODUCT(--(R6C6:R10006C6=RC9),--(R6C4:R10006C4=R10200C),R6C32:R10006C32)"
Cells(i + 7, "J").FormulaR1C1 = "=SUM(R[-7]C:R[-1]C)" 'TOTAL FOR GROUP
Next i

Range("J10201:J10320").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
====================================
' FUS1 Macro
' Macro recorded 4/25/2006
'
Dim i As Long
For i = 10322 To 10337 Step 8
Cells(i, "J").Resize(7).FormulaR1C1 = _
"=SUMPRODUCT(--(R6C6:R10006C6=RC9),--(R6C26:R10006C26=R10200C),--(R6C27:R10006C27=""MYR"")*(R6C30:R10006C30))"
Cells(i + 7, "J").FormulaR1C1 = "=SUM(R[-7]C:R[-1]C)" 'TOTAL FOR GROUP
Next i

Range("J10322:J10337").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
 
R

Roger Govier

Hi Robert

Just call the second macro in the last line before the End Sub of the
Sales macro.

Sub Sales()
....
....
Application.CutCopyMode = False

Call FUSI
End Sub()
 
B

Bob Phillips

In what way? It runs the macros true, but it is a different command, which
is what you asked for? What does Application.Run do that you don't want?

--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)
 
G

Guest

If you don't want to change the original code of either macro, then try
creating a third function that call the first two in order:

Sub ChainMyMacros()
Call Macro1
Call Macro2
End Sub
 
G

Guest

What I was looking for was to combine the 2 codes into one. The suggestions
from Roger and Rayo are acceptable and will be used. Thanks Bob.
 

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