• ベストアンサー

コマンドプロンプトからEXCELファイルを開き、印刷後、閉じるを一括に行いたい

Windows2000,XPでEXCEL2000を使っています。 コマンドプロンプトから次の(1)~(3)の動作を一括に動かせないものでしょうか。 今は(1)の動作を C:\>C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\EXCEL.EXE C:\TESTPRINT.XLS" このように記述すれば自動的にTESTPRINT.XLSが開くのですがこれを自動的に印刷し、印刷が終わったら自動的にEXCELが閉じてほしいのです。具体的な記述を教えて下さい。 ---------------------- (1)EXCELファイル(TESTPRINT.XLS)を開く (2)TESTPRINT.XLSを印刷する (3)印刷後、EXCELを閉じる -----------------------

  • T_top
  • お礼率91% (541/591)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

エクセルの起動スイッチでと思ったのだが、印刷するのは無いようです。 マクロのAuto_Open()に、印刷してエクセルを終了するコードを書いておくのはどうでしょう? 必要なコードは、ツール→マクロ→新しいマクロの記録で 手作業を記録して編集してください。 だいたい、こんな感じになります。(動作確認してません) Worksheets(1).PrintOut Application.DisplayAlerts = False '保存確認を表示させない Workbooks.Close Application.Quit

T_top
質問者

お礼

教えて頂いたようにマクロを作成しました。 ---------------------------------------------------- Private Sub Workbook_Open() ' ' AUTOPRINT2 Macro ' マクロ記録日 : 2007/6/27 ユーザー名 : T-top ' ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Application.DisplayAlerts = False '保存確認を表示させない 'Workbooks.Close Application.Quit End Sub --------------------------------------------------------- お陰様で思った通りにできました。 本当に有り難うございました。

その他の回答 (1)

noname#97729
noname#97729
回答No.2

コマンドプロンプトではないのですが なでしこですると、こんな感じです。 #ここから-------------------------------------- #エクセル印刷 データ1=「{デスクトップ}ワークシート01.xls」。 エクセル起動。 データ1をエクセル開く。 エクセルシート印刷。 エクセルブック閉じる。 エクセル終了。 終了。 #ここまで---------------------------

参考URL:
http://nadesi.com/
T_top
質問者

お礼

「なでしこ」は聞いたことがありまが、ここまでできるとは驚きました。 「なでしこ」を習得したくなりました。 良いきっかけを頂き感謝しています。 有り難うございました。

関連するQ&A

  • コマンドプロンプトについて

    バッチファイルで自動でエクセル起動して何秒後に終了、次のファイル起動・・・・ としたいのですがわかりません。 宜しくお願い致します。 @echo off "C:\Program Files (x86)\Microsoft Office\OFFICE11\excel.exe" "d:\2.xls" timer 10 SET PID= for /F "usebackqtokens=2" %%i in (`tasklist /nh /fi "Imagename eq excel.exe"`) do SET PID=%%i IF defined PID ( taskkill /PID %PID% ) "C:\Program Files (x86)\Microsoft Office\OFFICE11\excel.exe" "d:\3.xls" これをXPとWIN7で動かしたい。

  • ACCESSからEXCELの特定のファイル呼び出し

    ACCESSのメインフォームからコマンドボタンとマクロを使ってEXCELの特定のファイル(デスクトップ上にある顧客情報.xls)を参照したいのですが、EXCELを起動するところまでは出来ますが、このファイルが開けません。マクロのコマンドラインの記述がわかっていないようです。素人ですのでどなたか教えてください。 現在、コマンドラインには下記のように記述しています。 c:\Program Files\Microsoft Office\Office10\excel.exe \顧客情報.xls 記述のどこが違っているのでしょうか?ちなみに、顧客情報.xlsは C:\Documents and Settings\Administrator\デスクトップ  にあるとファイルには書いてありますが、この記述を全て書いてもエラーが出ます。 WINDOWS XP  ACCESS2002 EXCEL2002 を使用しております。 どなたかお教えください。よろしくお願い致します。

  • Excel2000とExcel2010の切り替え

    教えてください。 私の環境は、64bit版のWindows 7 Professionalです。 いろいろサイトを調べていて、Excelのバージョンを切り替える方法を発見し、軽い気持ちで試したのですが、元に戻らなくなってしまいました。 試したのは、Excel2000とExcel2010が共存する環境で、デフォルトのバージョンを変更する方法です。 具体的には、コマンドプロンプトから "C:\Program Files (x86)\Microsoft Office\Office\EXCEL.EXE" /regserver とすると、Excel2000がデフォルトになるため、「~.xls」ファイルをダブルクリックすると、 確かに、Excel2000が自動起動してくれました。 それで元に戻そうと、 "C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE" /regserver を実行して、元の「Excel2010」をデフォルトに戻そうとしたのですが、 「Excel2010」が立ち上がるだけで、デフォルトになりません。 (「~.xls」ファイルをダブルクリックすると「Excel2000」が立ち上がります。) サイトでは、この方法で切り替わる、とのことだったのですが… どなたか、元に戻す方法をご存じでしたら、教えてください。 よろしくお願い致します。

  • VBAでコマンドプロンプトを呼び出す記述で

    やりたいことはVBAからコマンドプロンプトにてBCP.EXEを呼び出してSQL文を実行することです。 コマンドプロンプトで直接打つと以下のようなコマンドになります。SQL文は長いので省略しました。 ************************* "c:\WINNT\system32\cmd.exe /k" "C:\Program Files\Microsoft SQL Server\80\Tools\Binn\bcp.exe " "SQL文" ************************* これをVBAで以下のように記述しました。 ////////////////////////////////////////////////// stAppName = "c:\WINNT\system32\cmd.exe /k" stAppName = stAppName & "C:\Program Files\Microsoft SQL Server\80\Tools\Binn\bcp.exe " stAppName = stAppName & "SQL文" Call Shell(stAppName, 1) ///////////////////////////////////////////////// 上のような記述だとコマンドプロンプトでは パスのダブクォテーションがなくなり ************************* c:\WINNT\system32\cmd.exe /k C:\Program Files\Microsoft SQL Server\80\Tools\Binn\bcp.exe ”SQL文” ************************* のように実行されBCP.exeのパスが通らず以下のエラーになります。 ///////////////////////////////////////////////// 内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 ///////////////////////////////////////////////// どなたかVBAでコマンドのパスにダブルクォテーションをつける方法を教えてください。

  • コマンドプロンプトで一度に複数のプログラムを立ち上げたいのですが、

    コマンドプロンプトで一度に複数のプログラムを立ち上げたいのですが、 "C:\Program Files\Microsoft Office\Office\EXCEL.EXE" "C:\Program Files\Microsoft Office\Office\WINWORD.EXE" のように書いて.batに変更して起動させても、エクセルだけが立ち上がりワードは立ち上がりません。 エクセルを終了させた後にワードが立ち上がります。 全てが同時に立ち上がるようにしたいのですが、良い方法はないでしょうか。 OSはウィンドウズ XPです。 よろしくお願いします。

  • コマンドプロンプトでAcceesを起動させたい

    コマンドプロンプトでAccessを起動してクエリ(選択)も起動したいのですが可能でしょうか? Acceesの起動は、 "C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE" サーバー名\○○.mdbで出来ました。 その後、クエリ(選択)も起動させたいのですが方法がわかりません。 よろしくお願いします。

  • プロンプトでExcelのファイルを印刷したい

    どうもこんにちは。 Excelのファイルを印刷する際、普段はExcelを起動して印刷するか、エクスプローラでファイルを右クリックして印刷を実行しています。 複数のxlsファイルを順番に印刷したいのですが、プロンプトでコマンドを入力して印刷する方法はないのでしょうか。 OSはWindowsXPを使用しています。 プリンタはパソコンと直接つながっているわけでなく、LAN経由でつながってます。

  • コマンドプロンプトについて

    お世話になります。 コマンドプロンプトでの起動方法は分かるのですが、 Excel終了方法を知りたいです。下記の様に記述して うまく行きませんでした。 また、今Excelが開かれているなら、終了する。と言う 記述方法もご教示頂きたく宜しくお願い致します。           記 taskkill / fi "excel.exe"-

  • VBからExcelクローズ検知

    VBで作成したaaa.exeの中でエクセルファイルbbb.xls、ccc.xlsを呼び出しています。 taskIdB = Shell("C:\Program Files\Microsoft Office\Office10\excel.exe C:\bbb.xls", vbHide) taskIdC = Shell("C:\Program Files\Microsoft Office\Office10\excel.exe C:\ccc.xls", vbHide) bbb.xls、ccc.xlsともにWorkbook_Openイベントで自動的にVBAが起動し、処理が終了すると自分自身を クローズするようになっています。 ここで問題になるのが、ccc.xls は bbb.xlsの処理完了を待ってから起動したいのですが、連続的に起動してしまう点です。 aaa.exeのなかで、bbb.xlsの終了を検知するなど、良い解決方法があればお教え下さい。 WindowsはXp pro.、VBは6.0、Excelは2002を使用しています。 よろしくお願いいたします。

  • ATコマンド

    コマンドプロンプトでたとえば at 11:30 "C:\Program Files\Microsoft Office\Office\exel.exe"として自動実行させようとしましたが、実行されないで、タスクスケジューラでは、「開始されませんでした」となります。また、タスクの修正も出来ないのですが・・・わかる方教えてください。

専門家に質問してみよう