
タスクスケジューラのタスクの実行条件として
 ・ユーザーがログオンしているときのみ実行する
 ・ユーザーがログオンしているかどうかにかかわらず実行する
の2種類があります!


デフォルト(初期設定)では
 ・「ユーザーがログオンしているかどうかにかかわらず実行する」にすると
 ・何故かタスクスケジューラからExcel(VBA)が実行されない
です!
※エラーメッセージが表示されるわけでもないため、実行できていないことに気付きにくいです。

この記事では
 ・「ユーザーがログオンしているかどうかにかかわらず実行する」であっても
 ・タスクスケジューラからExcel(VBA)を実行できるようにする
方法を紹介します!

なお
 ・「ユーザーがログオンしているかどうかにかかわらず実行する」にすると
 ・画面が表示されない
ようになります。
※例えばMsgBox関数によるメッセージ出力が表示されなくなります。
※そのため「VBAがちゃんと実行されているかどうかの確認」は、「メッセージ出力」ではなく
 「ファイル出力」等にする必要があります。
手順
「ユーザーがログオンしているかどうかにかかわらず実行する」であってもExcel(VBA)を実行できるようにするために、以下の3つを実施します。


参考①
タスクスケジューラからマクロ(VBA)を実行する方法は、以下の記事をご確認ください。
参考②
VBAを実行するVBScriptを作成して、VBScriptをタスクスケジューラから実行しても良いと思います。
VBScriptからVBAを実行する方法は、以下の記事をご確認ください。
参考③
上記で紹介した手順は、大手ITメディアサイトを参考にしました。

 
  
  
  
  

