View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
Robin Clay[_3_] Robin Clay[_3_] is offline
external usenet poster
 
Posts: 55
Default Positioning a DOS Window


Thank you for the suggestion - but acksherley....
VBA shells out to run a batch file
that takes several minutes to run.

Meanwhile, VBA continues,
and the next thing it does
is to kill the batch file -
but that is still running !


So I have inserted a MsgBox -
but if the user sees this,
she may be temopted to click OK...

So I wanted the DOS window to hide
the MsgBox until the batch file
has finished running.

Then the DOS window closes,
and the user may then click OK
to let VBA continue.

So I actually want the DOS window
to close on completion.


But what I was seeking
was a way to ensure
that the DOS window
covered the MsgBox.


Thanks again.


-----Original Message-----
I don't know a way of positioning the DOS window,
but you could stop it from closing:

Shell Environ("comspec") & _
" /k c:\runner.bat", vbNormalFocus

/c (instead of /k) will close the window

Robin Clay wrote:

Greetings !

I currently have this-
--------------------------------------------
Open "C:\Runner.bat" For Output As #1
Print #1, "@ECHO off"
Print #1, "Echo Please wait -"
Print #1, "Echo This may take some time ...."
Print #1, " [ other DOS commands ] ."
Close

Shell "C:\Runner.bat", vbNormalFocus

MsgBox "Please wait " & vbCrLf & _
"until the DOS window closes."

Kill "C:\Runner.bat"
----------------------------------------------

The reason for the MsgBox
is to prevent VBA from KILLing the batch file
until it has completed running.

I would like the DOS window to cover the MsgBox.

How can I specify whereabouts on the screen
the DOS window will appear?

RClay AT haswell DOT com


--

Dave Peterson

.