- ベストアンサー
プロンプトでExcelのファイルを印刷したい
どうもこんにちは。 Excelのファイルを印刷する際、普段はExcelを起動して印刷するか、エクスプローラでファイルを右クリックして印刷を実行しています。 複数のxlsファイルを順番に印刷したいのですが、プロンプトでコマンドを入力して印刷する方法はないのでしょうか。 OSはWindowsXPを使用しています。 プリンタはパソコンと直接つながっているわけでなく、LAN経由でつながってます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 残念ながら、起動オプションには印刷が見当たりませんでした。 http://support.microsoft.com/default.aspx?scid=kb;ja;291288 それで、下のようなものを作ってみました。 '-------------------------------------------------- ' Usage : XlsPrint.VBS file Option Explicit Dim fso Dim wShell Dim Path Dim File Dim Shell Dim I Set fso=CreateObject("Scripting.FileSystemObject") Set wShell=CreateObject("WScript.Shell") Path=wShell.RegRead("HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\excel.exe\") Path=Replace(Path,"""","") Path=wShell.ExpandEnvironmentStrings(Path) RegWrite "HKCR\*\shell\XlsPrint\command\",""""&Path&"""" RegWrite "HKCR\*\shell\XlsPrint\extended","" RegWrite "HKCR\*\shell\XlsPrint\ddeexec\","[open(""%1"")][print()][quit()]" RegWrite "HKCR\*\shell\XlsPrint\ddeexec\application\","Excel" RegWrite "HKCR\*\shell\XlsPrint\ddeexec\topic\","system" Set Shell=CreateObject("Shell.Application") For I=0 To WScript.Arguments.Count()-1 Set File=fso.GetFile(WScript.Arguments.Item(I)) Shell.ShellExecute File.Path,0,,"XlsPrint" WScript.Sleep 1000 Next WScript.Quit Sub RegWrite(Key,Value) If Not RegRead(Key)=Value Then wShell.RegWrite Key,Value,"REG_SZ" End Sub Function RegRead(Key) On Error Resume Next RegRead=vbNullChar RegRead=wShell.RegRead(Key) End Function '-------------------------------------------------- '---- から始まって '---- で終わる行までを XlsPrint.VBS として保存して、オプションにファイル名を指定して実行してみて下さい。 デフォルトのプリンターに出力される、、、はずです。
その他の回答 (1)
- violet430
- ベストアンサー率36% (27472/75001)
連続印刷ツールは如何ですか? http://www.vector.co.jp/soft/win95/writing/se368415.html http://www.vector.co.jp/soft/win95/business/se206961.html
お礼
回答ありがとうございます。 VBSで印刷用のスクリプトを書くことにしました。
お礼
回答ありがとうございます。 VBSを使用すればできるのですね。 このコードを参考にスクリプトを作成しました。 ありがとうございました。