Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Passing argument to excel
Hi all...
Interesting task here... I am using a Visual Basic app (NOT excel) to send a Shell() command that launches an excel sheet: "C:\MySheets\Go.xls" Windows finds Excel, loads the Go.xls sheet, and all is well... Here is the issue: I wish to pass an argument ALONG with this shell command that can be "seen" by Go.xls For example, I'd like to have this work: Result = Shell("C:\Mysheets\Go.xls " & iArgument) (where iArgument is an integer variable) A macro in Go.xls would need the iArgument to know what to do... Is there a way to accomplish this? Thanks so much! M |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Passing argument to excel
Stephen Bullen Posted:
I have a menu item which reads: "C:\Office95\Office\EXCEL.EXE" "D:\book2.xls" /e/param1/param2 In book2.xls, I have: Declare Function GetCommandLine Lib "kernel32" Alias "GetCommandLineA" () As String Sub Workbooks_Open() Dim s As String, i As Integer s = GetCommandLine i = InStr(1, s, "/e") MsgBox Mid(s, i + 2, 200) End Sub When I run it, I get a message box saying "/param1/param2". Works for Excel 95 and 97. The key is to use the (valid) /e parameter, but tack on your other parameters afterwards. Note that you can't use spaces in your parameters, even if they are in strings. ---------------------- Guess you would have to test it to see if it works for you. -- Regards, Tom Ogilvy "rci" wrote in message ... Hi all... Interesting task here... I am using a Visual Basic app (NOT excel) to send a Shell() command that launches an excel sheet: "C:\MySheets\Go.xls" Windows finds Excel, loads the Go.xls sheet, and all is well... Here is the issue: I wish to pass an argument ALONG with this shell command that can be "seen" by Go.xls For example, I'd like to have this work: Result = Shell("C:\Mysheets\Go.xls " & iArgument) (where iArgument is an integer variable) A macro in Go.xls would need the iArgument to know what to do... Is there a way to accomplish this? Thanks so much! M |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Passing argument to excel
AS you are already using VB, there is an easier way than using Shell (I don't
think it allows arbitrary command line arguments): set xl = CreateObject("Excel.Application") xl.Workbooks.Open "c:\mysheets\go.xls" xl.visible = true xl.Run "xx(78)" set xl = nothing where xx is a public macro in a module and 78 is an integer being passed to it. "rci" wrote: Hi all... Interesting task here... I am using a Visual Basic app (NOT excel) to send a Shell() command that launches an excel sheet: "C:\MySheets\Go.xls" Windows finds Excel, loads the Go.xls sheet, and all is well... Here is the issue: I wish to pass an argument ALONG with this shell command that can be "seen" by Go.xls For example, I'd like to have this work: Result = Shell("C:\Mysheets\Go.xls " & iArgument) (where iArgument is an integer variable) A macro in Go.xls would need the iArgument to know what to do... Is there a way to accomplish this? Thanks so much! M |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Passing a UDF as an argument to a UDF | Excel Discussion (Misc queries) | |||
Passing argument to another Sub | Excel Programming | |||
?Passing argument/parameter | Excel Programming | |||
Passing range as argument | Excel Programming | |||
Passing an argument to a quote | Excel Programming |