ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Shell Function - Execute DOS Command (https://www.excelbanter.com/excel-programming/340249-shell-function-execute-dos-command.html)

bill_morgan

Shell Function - Execute DOS Command
 
Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print cat.txt,
which is located in root directory. Is there something wrong with syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan



John.Greenan

Shell Function - Execute DOS Command
 
Can I suggest binning the use of shell? have a look at this link:

http://msdn.microsoft.com/library/de...ctPropMeth.asp

It's the Windows Script Host. It's much more user friendly that running
shell (la la la).


--
www.alignment-systems.com


"bill_morgan" wrote:

Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print cat.txt,
which is located in root directory. Is there something wrong with syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan



Peter T

Shell Function - Execute DOS Command
 
Would it work if you replaced the space in "print cat.txt" with say an
underscore. If so try embracing the string in the shell function with an
additional pair of quotes, perhaps chr(34) & "string" & chr(34)

Regards,
Peter T


"bill_morgan" wrote in message
...
Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print cat.txt,
which is located in root directory. Is there something wrong with syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan





bill_morgan

Shell Function - Execute DOS Command
 
I think function is working - just can't see the results. Command line opens
briefly in task bar and then closes, but no error is returned that I can see.

Function is returning a non-zero value. Underscore you suggested below also
works, but still cannot view results.

"Peter T" wrote:

Would it work if you replaced the space in "print cat.txt" with say an
underscore. If so try embracing the string in the shell function with an
additional pair of quotes, perhaps chr(34) & "string" & chr(34)

Regards,
Peter T


"bill_morgan" wrote in message
...
Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print cat.txt,
which is located in root directory. Is there something wrong with syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan






bill_morgan

Shell Function - Execute DOS Command
 
On my way to that site. Thanks for the suggestion.

"John.Greenan" wrote:

Can I suggest binning the use of shell? have a look at this link:

http://msdn.microsoft.com/library/de...ctPropMeth.asp

It's the Windows Script Host. It's much more user friendly that running
shell (la la la).


--
www.alignment-systems.com


"bill_morgan" wrote:

Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print cat.txt,
which is located in root directory. Is there something wrong with syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan



bill_morgan

Shell Function - Execute DOS Command
 
Here is what worked (simple oversight on my part):

Sub printer2()
m = Shell("command.com cd\")
t = Shell("command.com /c print cat.txt")
End Sub

OR

Sub print_stuff()
FileSystem.ChDir "c:\"
t = Shell("command.com /c print cat.txt")
End Sub



"Peter T" wrote:

Would it work if you replaced the space in "print cat.txt" with say an
underscore. If so try embracing the string in the shell function with an
additional pair of quotes, perhaps chr(34) & "string" & chr(34)

Regards,
Peter T


"bill_morgan" wrote in message
...
Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print cat.txt,
which is located in root directory. Is there something wrong with syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan






Peter T

Shell Function - Execute DOS Command
 
Thanks for the feedback

Afraid my original suggestion was a never going to be useful. Somehow I read
you wanted to print a file named "print cat.txt". Sorry if that lead you up
the wrong path!

But had that been the case, ie a space in the fullname, the extra quotes are
necessary with some usages of Shell.

Regards,
Peter T

"bill_morgan" wrote in message
...
Here is what worked (simple oversight on my part):

Sub printer2()
m = Shell("command.com cd\")
t = Shell("command.com /c print cat.txt")
End Sub

OR

Sub print_stuff()
FileSystem.ChDir "c:\"
t = Shell("command.com /c print cat.txt")
End Sub



"Peter T" wrote:

Would it work if you replaced the space in "print cat.txt" with say an
underscore. If so try embracing the string in the shell function with an
additional pair of quotes, perhaps chr(34) & "string" & chr(34)

Regards,
Peter T


"bill_morgan" wrote in message
...
Excel 2000 running in XP:

Having trouble getting consistent results from VBA Shell Function.

For example, this command appears to run okay, but doesn't print

cat.txt,
which is located in root directory. Is there something wrong with

syntax?
Thanks ....

ID = Shell("command.com /c print cat.txt")

bill morgan









All times are GMT +1. The time now is 02:41 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com