アプリ版:「スタンプのみでお礼する」機能のリリースについて

お願いします。

00時から23時54分まで
常時開いていて、温度の数値をロギングしているexcelブックがあります。
1分おきにロギングし、10分おきに表に記録し、グラフ化しています。
エクセルを開き、閉じてOSを再起動、またエクセルを開く、を365日繰り返すものです。
基本的に常時無人です。


印刷、保存など、計7個の作業を
Application.OnTime
にて
Workbook Open時にタイマーとしてマクロをかけてたのですが、
実行の信頼度が高くない(実行しない日がある)ので、
タスクスケジューラにて行おうとしました。


マクロを実行させるvbs

Option Explicit

Dim objxlsm

Set objxlsm=CreateObject("Excel.Application")

objxlsm.Workbooks.Open ("ブックパス)

objxlsm.Run "Module11.DB保存"

objxlsm.DisplayAlerts=False
objxlsm.quit
Set objxlsm = Nothing

以上を行うと、
今開いているブックではなく、保存されたブックを別で開き、そこのマクロを処理してしまいます。
現在開いているブックに処理をかける場合はどうしたらよいのでしょうか?

このブックはリアルタイム(表内に1分おきに数値を更新します)に動いている表グラフなので、
なんとか、開いている(表示している)ブックで外部からマクロを実行したいのですが。。

ご教授ください。

ちなみに、このブックは、タスクスケジューラでvbsにて開いています。(関係ありますか?)

おねがいします。

A 回答 (1件)

参考に


On Error Resume Next
Set objExcel=GetObject(,"Excel.Application") '既に起動しているExcelへの参照
On Error Goto 0
If objExcel Is Nothing Then
  MsgBox "Excelは起動していません"
  Wscript.Quit
End If
objExcel.Run "Book1.xls!DB保存"
Set objExcel = Nothing

この回答への補足

こんにちは。
回答ありがとうございます。

早速やってみたところ、
マクロ~を実行できません。このブックでマクロが使用できないか、
または、すべてのマクロが無効になっている可能性があります。
コード 800A03EC

となります。
もちろんこのブックでマクロは使用しています。
一分ごとにロギングしている箇所にマクロが入っているので、
一分ごとにマクロを実行しているのですが。。。

どこが悪いのでしょうか?

補足日時:2010/03/01 14:07
    • good
    • 8

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A