Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
PASSING PARAMETER FORM DOS script to Excel
Hi can anyone help me with this problem?
I have this dos script to pass down a parameter upon opening the excel @echo off start excel "\\136.121.2.1\its helpdesk\ConRisk\RSP Concentration Risk Calculation.xls" /e/8212305557 Is there any code to capture the parameter "8212305557" on the excel macro upon opening? I have tried this method but it gave me a kernel32 dll error on some pc. here is my code Option Base 1 Private Declare Function GetCommandLineA Lib "Kernel32" () As String Dim CmdLine As String 'command-line string Dim Args As Variant Dim ArgCount As Integer 'number of parameters Dim Pos1 As Integer, Pos2 As Integer Dim sMsg As String Dim Customercode As String CmdLine = GetCommandLineA 'get the cmd-line string CmdLine = Mid(CmdLine, 1, 255) On Error Resume Next 'for the wksht-function "Search" Pos1 = InStr(1, CmdLine, "/") + 1 Pos1 = InStr(Pos1, CmdLine, "/") + 1 Args = Split(Mid(CmdLine, Pos1, 255), "/") For ArgCount = LBound(Args) To UBound(Args) sMsg = sMsg & Args(ArgCount) & vbNewLine Next ArgCount Customercode = CStr(Trim(sMsg)) Can anyone help me with this? |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
PASSING PARAMETER FORM DOS script to Excel
Bruce,
You have to use this method to open your Excel file ? If so : http://p2p.wrox.com/TopicIndex/22874.htm but maybe it only works on XL97; could not get it work with XL2002. If I add a Debug.Print CmdLine I get a load of binary and code that appears to come from Adode (I have Acrobat installed). but MsgBox CmdLine shows "C:\..DOSPathToOffice..\excel.exe" c:\test.xls Not sure if DDE is an option, but Automation would be easy. NickHK "BruceWyne" wrote in message ... Hi can anyone help me with this problem? I have this dos script to pass down a parameter upon opening the excel @echo off start excel "\\136.121.2.1\its helpdesk\ConRisk\RSP Concentration Risk Calculation.xls" /e/8212305557 Is there any code to capture the parameter "8212305557" on the excel macro upon opening? I have tried this method but it gave me a kernel32 dll error on some pc. here is my code Option Base 1 Private Declare Function GetCommandLineA Lib "Kernel32" () As String Dim CmdLine As String 'command-line string Dim Args As Variant Dim ArgCount As Integer 'number of parameters Dim Pos1 As Integer, Pos2 As Integer Dim sMsg As String Dim Customercode As String CmdLine = GetCommandLineA 'get the cmd-line string CmdLine = Mid(CmdLine, 1, 255) On Error Resume Next 'for the wksht-function "Search" Pos1 = InStr(1, CmdLine, "/") + 1 Pos1 = InStr(Pos1, CmdLine, "/") + 1 Args = Split(Mid(CmdLine, Pos1, 255), "/") For ArgCount = LBound(Args) To UBound(Args) sMsg = sMsg & Args(ArgCount) & vbNewLine Next ArgCount Customercode = CStr(Trim(sMsg)) Can anyone help me with this? |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
PASSING PARAMETER FORM DOS script to Excel
Hi nick,
The script is exactly the same as what i had written previously. But problem is that some PC will have a KERNEL32 error prompt It indicated ModName: kernel32.dll ModVer:5.1.2600.2180 Offset:00009e45 error Regards Bruce "NickHK" wrote: Bruce, You have to use this method to open your Excel file ? If so : http://p2p.wrox.com/TopicIndex/22874.htm but maybe it only works on XL97; could not get it work with XL2002. If I add a Debug.Print CmdLine I get a load of binary and code that appears to come from Adode (I have Acrobat installed). but MsgBox CmdLine shows "C:\..DOSPathToOffice..\excel.exe" c:\test.xls Not sure if DDE is an option, but Automation would be easy. NickHK "BruceWyne" wrote in message ... Hi can anyone help me with this problem? I have this dos script to pass down a parameter upon opening the excel @echo off start excel "\\136.121.2.1\its helpdesk\ConRisk\RSP Concentration Risk Calculation.xls" /e/8212305557 Is there any code to capture the parameter "8212305557" on the excel macro upon opening? I have tried this method but it gave me a kernel32 dll error on some pc. here is my code Option Base 1 Private Declare Function GetCommandLineA Lib "Kernel32" () As String Dim CmdLine As String 'command-line string Dim Args As Variant Dim ArgCount As Integer 'number of parameters Dim Pos1 As Integer, Pos2 As Integer Dim sMsg As String Dim Customercode As String CmdLine = GetCommandLineA 'get the cmd-line string CmdLine = Mid(CmdLine, 1, 255) On Error Resume Next 'for the wksht-function "Search" Pos1 = InStr(1, CmdLine, "/") + 1 Pos1 = InStr(Pos1, CmdLine, "/") + 1 Args = Split(Mid(CmdLine, Pos1, 255), "/") For ArgCount = LBound(Args) To UBound(Args) sMsg = sMsg & Args(ArgCount) & vbNewLine Next ArgCount Customercode = CStr(Trim(sMsg)) Can anyone help me with this? |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
PASSING PARAMETER FORM DOS script to Excel
ERROR MESSAGE Faulting application excel.exe, version 9.0.0.8950, faulting
module kernel32.dll, version 5.1.2600.2180, fault address 0x00009e45 "BruceWyne" wrote: Hi nick, The script is exactly the same as what i had written previously. But problem is that some PC will have a KERNEL32 error prompt It indicated ModName: kernel32.dll ModVer:5.1.2600.2180 Offset:00009e45 error Regards Bruce "NickHK" wrote: Bruce, You have to use this method to open your Excel file ? If so : http://p2p.wrox.com/TopicIndex/22874.htm but maybe it only works on XL97; could not get it work with XL2002. If I add a Debug.Print CmdLine I get a load of binary and code that appears to come from Adode (I have Acrobat installed). but MsgBox CmdLine shows "C:\..DOSPathToOffice..\excel.exe" c:\test.xls Not sure if DDE is an option, but Automation would be easy. NickHK "BruceWyne" wrote in message ... Hi can anyone help me with this problem? I have this dos script to pass down a parameter upon opening the excel @echo off start excel "\\136.121.2.1\its helpdesk\ConRisk\RSP Concentration Risk Calculation.xls" /e/8212305557 Is there any code to capture the parameter "8212305557" on the excel macro upon opening? I have tried this method but it gave me a kernel32 dll error on some pc. here is my code Option Base 1 Private Declare Function GetCommandLineA Lib "Kernel32" () As String Dim CmdLine As String 'command-line string Dim Args As Variant Dim ArgCount As Integer 'number of parameters Dim Pos1 As Integer, Pos2 As Integer Dim sMsg As String Dim Customercode As String CmdLine = GetCommandLineA 'get the cmd-line string CmdLine = Mid(CmdLine, 1, 255) On Error Resume Next 'for the wksht-function "Search" Pos1 = InStr(1, CmdLine, "/") + 1 Pos1 = InStr(Pos1, CmdLine, "/") + 1 Args = Split(Mid(CmdLine, Pos1, 255), "/") For ArgCount = LBound(Args) To UBound(Args) sMsg = sMsg & Args(ArgCount) & vbNewLine Next ArgCount Customercode = CStr(Trim(sMsg)) Can anyone help me with this? |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
PASSING PARAMETER FORM DOS script to Excel
As I said, I don't think this will on later versions XL after 97.
Why not use automation instead ? It would be more straight forward. Or DDE ? NickHK "BruceWyne" wrote in message ... Hi nick, The script is exactly the same as what i had written previously. But problem is that some PC will have a KERNEL32 error prompt It indicated ModName: kernel32.dll ModVer:5.1.2600.2180 Offset:00009e45 error Regards Bruce "NickHK" wrote: Bruce, You have to use this method to open your Excel file ? If so : http://p2p.wrox.com/TopicIndex/22874.htm but maybe it only works on XL97; could not get it work with XL2002. If I add a Debug.Print CmdLine I get a load of binary and code that appears to come from Adode (I have Acrobat installed). but MsgBox CmdLine shows "C:\..DOSPathToOffice..\excel.exe" c:\test.xls Not sure if DDE is an option, but Automation would be easy. NickHK "BruceWyne" wrote in message ... Hi can anyone help me with this problem? I have this dos script to pass down a parameter upon opening the excel @echo off start excel "\\136.121.2.1\its helpdesk\ConRisk\RSP Concentration Risk Calculation.xls" /e/8212305557 Is there any code to capture the parameter "8212305557" on the excel macro upon opening? I have tried this method but it gave me a kernel32 dll error on some pc. here is my code Option Base 1 Private Declare Function GetCommandLineA Lib "Kernel32" () As String Dim CmdLine As String 'command-line string Dim Args As Variant Dim ArgCount As Integer 'number of parameters Dim Pos1 As Integer, Pos2 As Integer Dim sMsg As String Dim Customercode As String CmdLine = GetCommandLineA 'get the cmd-line string CmdLine = Mid(CmdLine, 1, 255) On Error Resume Next 'for the wksht-function "Search" Pos1 = InStr(1, CmdLine, "/") + 1 Pos1 = InStr(Pos1, CmdLine, "/") + 1 Args = Split(Mid(CmdLine, Pos1, 255), "/") For ArgCount = LBound(Args) To UBound(Args) sMsg = sMsg & Args(ArgCount) & vbNewLine Next ArgCount Customercode = CStr(Trim(sMsg)) Can anyone help me with this? |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Passing parameter to a query | Excel Programming | |||
Using Find method in Excel passing more than 1 parameter | Excel Programming | |||
?Passing argument/parameter | Excel Programming | |||
Passing a parameter to Excel | Excel Programming | |||
Passing parameter from Excel to stored procedure? | Excel Programming |