- 締切済み
Windowsのタスク機能からExcelを開きマクロを実行しようと思っても、Excelがアクティブにならず、マクロが実行されない。
仕事で、指定の時間にExcelで作ったマクロを実行し、帳票を作らなくてはなりません。 PCの前にいない時間に、自動的に実行される必要があります。 マクロはExcelを開くと同時に実行されるよう、「Auto_Open」を使いました。 あとは自動にこのExcelが開けばいいので、こちらで検索したところ、タスク機能を使うとExcelを指定の時間に開くことができると知り、試してみました。 http://oshiete1.goo.ne.jp/qa4146028.html しかし、Excelは開くのですが、アクティブの状態にはならず、マクロが実行されません。 タスク機能ではExcelを開いてマクロを実行することはできないのでしょうか? タスク機能は、ウィザードに従って設定してます。プロパティからは特に設定していません。 どなたか教えてください。 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 AppActivate Application.Caption ということは、他のソフトウェアでも使っているのでしょうか。それで、動く、動かないというのは、コードを見なければ分かりませんが、どうしても納得いきませんが。VBAが働かないというのは、他のソフトウェアと共通に使い、SendKeys でも使っていなければ起こりません。もし、面倒でなかったら、一度、コードを見せていただいたほうが良いかもしれません。 なお、ここのレベルは全体的に低いかもしれませんが、それでも、ググって解決するレベル以上でなければ、回答者としての存在価値などありません。(^^; それと、Auto_Open は、プロセスとしてはThisWorkbook モジュールを過ぎてから、標準モジュールに入ります。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 先ほど、いろんな方法で、試してみました。 >タスク機能ではExcelを開いてマクロを実行することはできないのでしょうか? あまり掲示板では、Excelの正確な情報は出ていないのではないでしょうか? それとも、私のPCにエラーがあるのでしょうか? 元のご質問の、#4146028 を読んでできるなら、それでもよいとは思うのですが、私のPCのタスクでは、エラーが発生して出来ませんね。 Windows タスク の設定方法 -- WinXPの場合 --:SampleFileHelp http://www.accessclub.jp/samplefile/help/help_220_1.htm この方法でも出来ません。こちらは、Win PC SP3 で何かが変わったかもしれませんが、プログラムを選ぶところに、直接ファイルを選んでもできません。 以前から、ずっと、以下の方法でやっています。土日は立ち上げしないまでの設定も可能です。 指定した時間に実行するマクロ http://oshiete1.goo.ne.jp/kotaeru.php3?qid=4902400 #2 それと、私は、Auto_Open で自動実行させるよりも、ThisWorkbook モジュールの [Sub Workbook_Open()]のほうがいいと思います。
- Sinogi
- ベストアンサー率27% (72/260)
Excelだけ開いてるんじゃないですか? >マクロはExcelを開くと同時に実行されるよう、「Auto_Open」を使いました このファイルはいつ開きますか?
お礼
回答ありがとうございます。 書き方が悪く、すみません。 Excelを指定したわけではなく、参照ボタンよりマクロファイルを指定しました。 このファイルは開くのですが、非アクティブ状態で、タスクバーのところがピカピカ光っって、 マクロは実行されていませんでした。 再度、掘り下げてググッた所、「Auto_Open」のところに、 こちらの構文が足りないことが判りました。 AppActivate Application.Caption テストしてみたところ、無事マクロが動くようになりました。 お騒がせしました。 ありがとうございました。
お礼
回答ありがとうございます。 再度、掘り下げてググッた所、「Auto_Open」のところに、 こちらの構文が足りないことが判りました。 AppActivate Application.Caption テストしてみたところ、無事マクロが動くようになりました。 あまりプログラムに詳しくなく、簡単にできる方法を探していました。 「指定した時間に実行するマクロ」は今後のために拝見させていただきます。 >Auto_Open で自動実行させるよりも、ThisWorkbook モジュールの [Sub Workbook_Open()]のほうがいいと思います。 そうですか。違いがよくわからなかったため、Auto_Openを採用してしまいました。 ThisWorkbook モジュールの [Sub Workbook_Open()]に修正したいと思います。 ありがとうございました。