send parameters to a batch file with the shell command
Hi,
I've tried succesfully to call a batch macro from excel with the shell command. But when I add parameters to the shell pathname it does not work. assume the batch file x.bat content is: echo year is %1 pause The following works well: Dim RetVal mycmd = "C:\temp\x.bat" RetVal = Shell(mycmd, 1) but: Dim RetVal mycmd = "C:\temp\x.bat 2006" RetVal = Shell(mycmd, 1) does not work. Any help will be appreciated Marcos |
send parameters to a batch file with the shell command
Dim RetVal
mycmd = "C:\temp\x.bat 2006" RetVal = Shell(mycmd, 1) works by me! x.bat contains 1 line: echo %1 -- AP "Marcos" a écrit dans le message de news: ... Hi, I've tried succesfully to call a batch macro from excel with the shell command. But when I add parameters to the shell pathname it does not work. assume the batch file x.bat content is: echo year is %1 pause The following works well: Dim RetVal mycmd = "C:\temp\x.bat" RetVal = Shell(mycmd, 1) but: Dim RetVal mycmd = "C:\temp\x.bat 2006" RetVal = Shell(mycmd, 1) does not work. Any help will be appreciated Marcos |
send parameters to a batch file with the shell command
Ardus
Thanks, it did work for me as well... My real problem was calling a macro in the directory C:\Documents and Settings\Marcos\Desktop\temp. For the email i wrote c:\temp to simplify, but and as I tried with c:\temp it did work as you said. This helped me workout the solution. I was running mycmd= "C:\Documents and Settings\Marcos\Desktop\temp\x.bat 2006" RetVal = Shell(mycmd, 1) it seems a double quetes were needed for the path above. Adding: mycmd= chr$(34)+"C:\Documents and Settings\Marcos\Desktop\temp\x.bat"+chr$(34)+" 2006" did the trick. thanks for the help, Marcos |
send parameters to a batch file with the shell command
You could have written:
mycmd= ""C:\Documents and Settings\Marcos\Desktop\temp\x.bat"" 2006" HTH -- AP "Marcos" a écrit dans le message de news: ... Ardus Thanks, it did work for me as well... My real problem was calling a macro in the directory C:\Documents and Settings\Marcos\Desktop\temp. For the email i wrote c:\temp to simplify, but and as I tried with c:\temp it did work as you said. This helped me workout the solution. I was running mycmd= "C:\Documents and Settings\Marcos\Desktop\temp\x.bat 2006" RetVal = Shell(mycmd, 1) it seems a double quetes were needed for the path above. Adding: mycmd= chr$(34)+"C:\Documents and Settings\Marcos\Desktop\temp\x.bat"+chr$(34)+" 2006" did the trick. thanks for the help, Marcos |
send parameters to a batch file with the shell command
Sure!
-- AP "Tom Ogilvy" a écrit dans le message de news: ... maybe one more " mycmd= """C:\Documents and Settings\Marcos\Desktop\temp\x.bat"" 2006" ? mycmd "C:\Documents and Settings\Marcos\Desktop\temp\x.bat" 2006 -- Regards, Tom Ogilvy "Ardus Petus" wrote in message ... You could have written: mycmd= ""C:\Documents and Settings\Marcos\Desktop\temp\x.bat"" 2006" HTH -- AP "Marcos" a écrit dans le message de news: ... Ardus Thanks, it did work for me as well... My real problem was calling a macro in the directory C:\Documents and Settings\Marcos\Desktop\temp. For the email i wrote c:\temp to simplify, but and as I tried with c:\temp it did work as you said. This helped me workout the solution. I was running mycmd= "C:\Documents and Settings\Marcos\Desktop\temp\x.bat 2006" RetVal = Shell(mycmd, 1) it seems a double quetes were needed for the path above. Adding: mycmd= chr$(34)+"C:\Documents and Settings\Marcos\Desktop\temp\x.bat"+chr$(34)+" 2006" did the trick. thanks for the help, Marcos |
send parameters to a batch file with the shell command
Thanks to all
it's much easier the way you say |
All times are GMT +1. The time now is 10:13 AM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com