

皆さん宜しくお願いします。
OS起動時に複数のプログラムをbatファイルで起動しようとしています。
で、困っているのが起動順です。
たとえば
起動したいプログラムがエクセル・ワード・パワーポイントとして普通に
start "" "C:\Program Files\Microsoft Office\Office\EXCEL.EXE"
start "" "C:\Program Files\Microsoft Office\Office\WINWORD.EXE"
start "" "C:\Program Files\Microsoft Office\Office\POWERPNT.EXE"
とします。
個々のプログラムの起動時間が違うのでパワーポイント・エクセル・ワードの順で立ち上がり最前面に出ているのがワードになるとします。
しかし一番最初に使いたいのはエクセルなんです。
タスクバーで入替えればいいのですがエクセルが最前面にしておきたいのです。
batファイルの記述で起動するタイミングを遅らせたりすることは可能でしょうか?
No.2ベストアンサー
- 回答日時:
スクリプトの記述場所は、問題ないと思います。
ただし、このスクリプトは、起動時に実行する全てのプログラムの初期処理が終了した後で、実行しなければ意味がありません。
※このスクリプトを実行した後で、他のアプリケーションの初期化が完了すると、そのアプリケーションが最前面にでてしまう可能性がある。
bat ファイルの最後に、このスクリプトが実行されるよう記述位置を変更すると共に、他のアプリケーションの初期化を待ち合わせる意味で、下記のコマンドを、objShell.AppActivate("Microsoft Excel") の直前に追加してみてください。
WScript.Sleep 5000
なお、上記の "5000" は、待ち合わせる wait 時間(ms)を指定しています。とりあえず、5秒としましたが、これでも短いかもしれないので、実態に合うように調整してください。
No.1
- 回答日時:
お問い合わせになっている状態というのは、システムの起動が完了した時にエクセルのウィンドウがアクティブ状態になっていること、と判断しました。
そのためには、プログラムの起動タイミングを操作しても、難しいと思います。
それよりも、bat ファイルの最後でエクセルのウィンドウをアクティブ状態にしてあげれば良いと思います。
それには、WHS(Windows Script Host) を使います。
WHS の起動方法は、次のように cscript コマンドから スクリプト・ファイルを呼び出します。
C:\> cscript //NOLOGO Sample.vbs
今回のスクリプトでは、エクセルのウィンドウをアクティブ状態にするので、"Sample.vbs" は以下のような 2行のスクリプトになります。
※ Sample.vbs の内容(メモ帳で編集してください。)
set objShell = WScript.CreateObject("WScript.Shell")
objShell.AppActivate("Microsoft Excel")
注意) 2行目の "Microsoft Excel" 部分は、前面に出したいウィンドウの左上に表示されているキャプション(名前)に合わせてください。
ご自分のシステムで、エクセルを起動させた時のキャプションになるように変更してください。
この回答への補足
ご回答ありがとう御座います。
ならびに返事が遅れましたこと申し訳御座いませんでした。
教えていただいたとおり実行してみましたが
C:\> cscript //NOLOGO Sample.vbsの記述は
エクセルなどを立ち上げるbatファイルに記述すればいいのでしょうか?
全てのプログラムを立ち上げた後コマンドプロンプトにて
sample.vbsを実行してみるとエクセルがアクティブになるのですが、
batファイルにて立ち上げてみるとエクセルがアクティブになりません・・・
記述場所を変えないといけないのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Outlook(アウトルック) outlookの送信エラーについて 1 2022/05/13 12:04
- Visual Basic(VBA) モードレスでユーザーフォームが開け(表示)ません。 4 2022/09/09 11:05
- Android Microsoft 365について 4 2022/06/19 06:26
- その他(Microsoft Office) 新pcでoffice使いたい 3 2022/11/25 19:45
- その他(Microsoft Office) googleドキュメントやスプレッドシート、スライドが無料で使えるのにofficeを入れる必要性 4 2022/10/26 20:41
- Word(ワード) LibreOfficeで数年保存しているデータの変更作業 4 2022/07/08 17:15
- その他(Microsoft Office) Office(Windows版,Word/Excel/PowerPoint等)にログインできません 4 2022/07/24 15:18
- ノートパソコン 現在、fu....さんWindows11proを使用しているのですがエクセルの起動が少し遅く色々試し 7 2023/04/01 10:30
- Word(ワード) LibreOfficeで保存データをMicrosoft Office 2013に変更したい。 2 2022/06/14 23:36
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FTPでユーザ名の表示
-
Linuxサーバーは定期リブートを...
-
solaris2.6で困っています
-
geditについて
-
VNCクライアントから管理者権限...
-
起動しているapacheのバージョ...
-
Apacheが2つインストールされ...
-
GNOMEがたちあがらなくなっちゃ...
-
ネットワーク上のコピー
-
MacOSのLaunchAgentsってなんで...
-
NumLock設定機能のないBIOSをも...
-
リモートのサーバでXwindowを起...
-
batファイルでのプログラム起動順
-
起動時のターミナルの状態を戻...
-
ntpポートを開けるには??
-
デーモンへの登録(ランレベル...
-
FMVマイページ、FMVサーチが勝...
-
Google Chromeの文字の表示がぼ...
-
フリーのメーラーってどんなも...
-
RPGツクールを使ったフリーゲー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Linuxサーバーは定期リブートを...
-
DNSサーバーの構築「no servers...
-
MacOSのLaunchAgentsってなんで...
-
AIXルーティング情報について
-
apacheが起動しない
-
起動時のターミナルの状態を戻...
-
geditについて
-
wermgr.exeって何ですか?
-
rsh コマンドでのパスワード入...
-
テキストログインでstartxをし...
-
VNCクライアントから管理者権限...
-
インデザイン(InDesing)の開き...
-
Centos7にTomcat9をインストー...
-
リモートのサーバでXwindowを起...
-
日曜日の4時にMySQLが終了する
-
WMIを有効にする方法が分かりま...
-
管理ツール→サービス で、無効...
-
vsftpdが停止しない
-
起動しているapacheのバージョ...
-
batファイルでのプログラム起動順
おすすめ情報