View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.misc
Steve Yandl
 
Posts: n/a
Default What is the command-line print switch in Excel?

Yes, vbs support and the Script Host are included. It can be downloaded for
free from Microsoft if you have any Win98 systems but it's standard on WinXP
and Win2k.

I like to place shortcuts to this sort of script in my SendTo folder rather
than type out command lines with arguments but do what suits your needs
best.

Steve


"eeidfn" wrote in message
...
Steve,
That worked great. It also works if the file happens to be open already.

The only drawback is that VBS support is required in addition to Excel
being
installed. Is WScript and Visual Basic Script standard on Windows 2000
and
XP?

Thanks.

"Steve Yandl" wrote:

I don't think you can do it directly from a command line. You could use
a
somewhat indirect approach with a vbScript. If you save what I've got
between the lines below as a text file with a VBS extension (for example,
C:\Test\PrintWkbk.vbs) then you can either drag xls files into the vbs or
a
shortcut to it or you can use a command line like:
C:\Test\PrintWkbk.vbs "C:\xlFiles\Text.xls"
to print the Workbook. Note that if you have disabled file associations
for
scripts, you may have to use the command line
WScript.exe C:\Test\PrintWkbk.vbs "C:\xlFiles\Text.xls"

__________________________________________________ ___________

Const xlDoNotSaveChanges = 2

Dim fso, oXL, oWkbk

Set fso = CreateObject("Scripting.FileSystemObject")
Set oXL = CreateObject("Excel.Application")

oXL.Visible = False

If WScript.Arguments.Count = 0 Then
WScript.Quit
Else
For A = 0 To (WScript.Arguments.Count - 1)
If (Right(WScript.Arguments.Item(A), 3) = "xls") _
AND fso.FileExists(WScript.Arguments.Item(A)) Then
Set oWkbk = oXL.Workbooks.Open(WScript.Arguments.Item(A))
oWkbk.PrintOut
oWkbk.Close xlDoNotSaveChanges
End If
Next
End If

oXL.Quit
Set fso = Nothing
Set oXL = Nothing
__________________________________________________ ___________

Steve Yandl




"eeidfn" wrote in message
...
Opening Excel 2003 from the command-line as follows works:
"C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE" /e
C:\excelFile.xls

But how do I print from the command-line?

Thanks.