View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Harald Staff Harald Staff is offline
external usenet poster
 
Posts: 1,327
Default call a procedure using current inputs

Hi Mike

Just pass whatever you need passed from one to another, like this:

Sub Test1()
Dim S As String
S = InputBox("Now what ?")
Call Test2(S, Now)
End Sub

Sub Test2(What As String, D As Date)
MsgBox "At " & D & " You said " & What & _
". Please wait for the police.", vbInformation
End Sub

HTH. Best wishes Harald

"mike allen" skrev i melding
...
this is a very simple example of a much bigger pair of subs. i need to

use
variables set in main sub w/in the called upon second sub. example:

Sub Macro1()
For i = 1 To 3
tabpick = "page " & i
Call macro2
Next i
End Sub

Sub macro2()
MsgBox "you are on " & tabpick
End Sub

it should result in a series of 3 msgbox's that say: 'you are on page 1',
'you are on page 2', 'you are on page 3'
is it possible for a called upon sub to remember the variable at hand
without re-establishing all my variables? these variables set in 1st sub
take up tons of code to calculate, so it is not feasible to re-calc every
time. also, the code in the 2nd and subsequent subs is quite involved. I
have thought about a function vs. sub, but the inputs are so many. any
other ideas? thanks, mike allen