Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
Is there a way to launch a .bat file in VBA? I have read to use the
shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
It does work with Bat and Cmd files. These are considered executables.
-- Regards, Tom Ogilvy " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
For example:
Sub belfry() x = Shell("cmd.exe /c C:\x.bat", 1) End Sub CMD "understands" what to do with .bat files -- Gary's Student " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
Thanks for the reply. It's still not running correctly. I assume the
C:\x.bat in your example is the file location and filename? What does the /c do? Thanks. Gary''s Student wrote: For example: Sub belfry() x = Shell("cmd.exe /c C:\x.bat", 1) End Sub CMD "understands" what to do with .bat files -- Gary's Student " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
I am sure that works, but this worked fine for me as well:
Sub EFG() Shell "C:\Data2\mybat.bat" End Sub -- Regards, Tom Ogilvy "Gary''s Student" wrote: For example: Sub belfry() x = Shell("cmd.exe /c C:\x.bat", 1) End Sub CMD "understands" what to do with .bat files -- Gary's Student " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
Thanks Tom. That seems to run the batch file, but the results of the
batch file don't seem to be happening. I looked up the shell command in the help file and saw the following note: Note By default, the Shell function runs other programs asynchronously. This means that a program started with Shell might not finish executing before the statements following the Shell function are executed. Do you think it's possible that I am not getting my results because the MS-DOS command prompt window is being closed before it's finished executing the batch file? Thanks. Tom Ogilvy wrote: I am sure that works, but this worked fine for me as well: Sub EFG() Shell "C:\Data2\mybat.bat" End Sub -- Regards, Tom Ogilvy "Gary''s Student" wrote: For example: Sub belfry() x = Shell("cmd.exe /c C:\x.bat", 1) End Sub CMD "understands" what to do with .bat files -- Gary's Student " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
It depends on how you define getting the results
Once the shell command is executed, the vba code continues on. The bat file is running in another thread disconnected from the vba code. What are you trying to accomplish and how are you trying to use the results of the bat file. -- Regards, Tom Ogilvy " wrote: Thanks Tom. That seems to run the batch file, but the results of the batch file don't seem to be happening. I looked up the shell command in the help file and saw the following note: Note By default, the Shell function runs other programs asynchronously. This means that a program started with Shell might not finish executing before the statements following the Shell function are executed. Do you think it's possible that I am not getting my results because the MS-DOS command prompt window is being closed before it's finished executing the batch file? Thanks. Tom Ogilvy wrote: I am sure that works, but this worked fine for me as well: Sub EFG() Shell "C:\Data2\mybat.bat" End Sub -- Regards, Tom Ogilvy "Gary''s Student" wrote: For example: Sub belfry() x = Shell("cmd.exe /c C:\x.bat", 1) End Sub CMD "understands" what to do with .bat files -- Gary's Student " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
#8
Posted to microsoft.public.excel.programming
|
|||
|
|||
Launch a .bat file with VBA
The bat file takes a grouping of binary files in a folder and combines
them then deletes the original binary files. When I run the bat file just by double clicking it in the folder, it works fine, but when I try to run it through my VBA code, I see the MS-DOS windown come up and it looks like it runs fine, but then the old binary files are there untouched. Tom Ogilvy wrote: It depends on how you define getting the results Once the shell command is executed, the vba code continues on. The bat file is running in another thread disconnected from the vba code. What are you trying to accomplish and how are you trying to use the results of the bat file. -- Regards, Tom Ogilvy " wrote: Thanks Tom. That seems to run the batch file, but the results of the batch file don't seem to be happening. I looked up the shell command in the help file and saw the following note: Note By default, the Shell function runs other programs asynchronously. This means that a program started with Shell might not finish executing before the statements following the Shell function are executed. Do you think it's possible that I am not getting my results because the MS-DOS command prompt window is being closed before it's finished executing the batch file? Thanks. Tom Ogilvy wrote: I am sure that works, but this worked fine for me as well: Sub EFG() Shell "C:\Data2\mybat.bat" End Sub -- Regards, Tom Ogilvy "Gary''s Student" wrote: For example: Sub belfry() x = Shell("cmd.exe /c C:\x.bat", 1) End Sub CMD "understands" what to do with .bat files -- Gary's Student " wrote: Is there a way to launch a .bat file in VBA? I have read to use the shell command to launch programs, but that doesn't seem to be working so I'm not sure that it works for anything other than executables? Is there any way to do this? Thanks much! Nick |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Launch Program then load file | Links and Linking in Excel | |||
xls file will not launch | Excel Discussion (Misc queries) | |||
2007 Excel will not launch from file | Excel Discussion (Misc queries) | |||
File won't launch | Excel Discussion (Misc queries) | |||
Macro launch - Button vs Manual launch , has different results. | Excel Programming |