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
|