過去ログ

                                Page     817
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼指定日指定時刻にマクロを自動実行  hana 03/2/27(木) 16:45
   ┣Re:指定日指定時刻にマクロを自動実行  こう 03/2/27(木) 17:37
   ┃  ┗Re:指定日指定時刻にマクロを自動実行  hana 03/2/27(木) 22:43
   ┃     ┗自動実行でExcelは不向き?  こう 03/3/1(土) 14:18
   ┃        ┣Re:自動実行でExcelは不向き?  hana 03/3/2(日) 19:57
   ┃        ┗Re:自動実行でExcelは不向き?  yu-ji 03/3/3(月) 9:29
   ┗Re:指定日指定時刻にマクロを自動実行  ポンタ 03/2/27(木) 18:24
      ┗Re:指定日指定時刻にマクロを自動実行  hana 03/2/27(木) 22:58
         ┣Re:指定日指定時刻にマクロを自動実行  ポンタ 03/2/28(金) 9:52
         ┗Re:指定日指定時刻にマクロを自動実行  ポンタ 03/2/28(金) 13:39
            ┗Re:指定日指定時刻にマクロを自動実行  hana 03/3/2(日) 20:03

 ───────────────────────────────────────
 ■題名 : 指定日指定時刻にマクロを自動実行
 ■名前 : hana
 ■日付 : 03/2/27(木) 16:45
 -------------------------------------------------------------------------
   先程教えて頂いた内容と似ていますが、毎月1日がきたら
自動的にあるマクロを実行させることはできますか?
例えばbookを開かずに毎月1日0:00になったら勝手に処理をして
くれている、というようなことは可能なのでしょうか?
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : こう <kou__@anet.ne.jp>  ■日付 : 03/2/27(木) 17:37  -------------------------------------------------------------------------
   hana さん、こんにちわ

>毎月1日がきたら
>自動的にあるマクロを実行させることはできますか?
>例えばbookを開かずに毎月1日0:00になったら勝手に処理をして

bookを開かないとマクロは実行できませんからVBA以外で実現させましょう。
色々方法はあると思いますが、例えばMS-DOSコマンドの「AT」コマンドは
いかがですか?
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : hana  ■日付 : 03/2/27(木) 22:43  -------------------------------------------------------------------------
   こうさんこんばんは!レスありがとうございます。

MS-DOSですか・・。全く検討もつかないのですが、簡単に出来るので
しょうか??(マクロもド素人ですがそれ以上に使ったことがない
んです・・)
 ───────────────────────────────────────  ■題名 : 自動実行でExcelは不向き?  ■名前 : こう <kou__@anet.ne.jp>  ■日付 : 03/3/1(土) 14:18  -------------------------------------------------------------------------
   hana さん、こんにちわ。

>MS-DOSですか・・。全く検討もつかないのですが、簡単に出来るので
>しょうか??
お使いのOSは何ですか?
Windows200,XPならコントロールパネルに「タスク」がありますので、
これを使用すれば簡単にスケジュールを設定することがでいます。
(Win98以前は未確認です)

ちなみに、この「タスク」で実行されたアプリケーションは、バックグラウンド
で実行されるようなので、以下のような条件では不向きのようです。(未確認)
 メッセージを表示させて応答を待つ。とか、
 終了ボタンをクリックしないと終了しない。


別枝によると、特に「自動実行」にはこだわっていないようですので、
ポンタさんの提案内容などを検討されてはいかがでしょうか?
 ───────────────────────────────────────  ■題名 : Re:自動実行でExcelは不向き?  ■名前 : hana  ■日付 : 03/3/2(日) 19:57  -------------------------------------------------------------------------
   こうさんこんばんは。間があいてしまってすみません。
OSですが、会社は95なんです。。MS-DOSって聞いて
腰が引けましたが、簡単にできるというのなら今度挑戦
してみたいと思いました。今回はマクロでやってみようか
と思います。色々勉強になりました。ありがとうございました!
 ───────────────────────────────────────  ■題名 : Re:自動実行でExcelは不向き?  ■名前 : yu-ji  ■日付 : 03/3/3(月) 9:29  -------------------------------------------------------------------------
   ▼こう さん:
>Windows200,XPならコントロールパネルに「タスク」がありますので、
>これを使用すれば簡単にスケジュールを設定することがでいます。
>(Win98以前は未確認です)

必要ないとは思いますが、一応補足です。

Win98にもタスクスケジュール機能はありますが、ログインしている状態
でないと動かなかったと思います。
#バックグラウンドでは動かない・・・・はず。
ログインしてれば、普通にダブルクリックするのと同じように、ファイルが開いて
マクロが実行されます。

Win95にはなかったんじゃなかったかな?
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : ポンタ  ■日付 : 03/2/27(木) 18:24  -------------------------------------------------------------------------
   毎月1日0:00にどんな処理をしたいのかによって
適・不適が出るように思います。

どんな処理をしたいのですか?
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : hana  ■日付 : 03/2/27(木) 22:58  -------------------------------------------------------------------------
   ポンタさんこんばんは!レスありがとうございます。
(いつもすみません)

>毎月1日0:00にどんな処理をしたいのかによって
>適・不適が出るように思います。
>
>どんな処理をしたいのですか?

1つは選択セルのclearcontents(前月分の入力部分を消して
まっさらに戻す作業)、もう1つは別bookに元bookからのコピペ
なのですが・・。修正専用bookを別に作成していて、1度そちら
にデータを移して、元bookの入力部分は真っ白に戻すことができるか、
と思ったのです。

修正がいつまでもだらだら続く事態を回避する為にそのように
できないかと上から言われまして・・。(修正専用bookは1人の
人が管理する予定のためそちらにデータを引き上げる形)
「毎月1日0:00」というのが絶対条件ではなく、要は月が変わって
からアクセスした時に上記の様な処理が終わっていればよいのですが
・・。何か良い方法がありますでしょうか?
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : ポンタ  ■日付 : 03/2/28(金) 9:52  -------------------------------------------------------------------------
   おはようございます。

一例ですが、ThisWorkBookモジュールに以下のコードを貼り付けると、
ブックを開いた直後に、

1.Sheet1のA1に入力されている日付と今日の日付を比較する
 (Format関数で2003/02の形式に変換しています)
2.今日の日付のほうが新しいなら、メッセージを出す
3.A1に今日の日付を書き込む
4.ブックを上書き保存する

という作業します。

Private Sub Workbook_Open()
  Dim MyDate As Date
  MyDate = Worksheets("Sheet1").Range("A1").Value
  If MyDate < Format(Date, "yyyy/mm") Then
    MsgBox ("今月最初のアクセスです")
  End If
  Worksheets("Sheet1").Range("A1").Value = Format(Date, "yyyy/mm")
  ThisWorkbook.Save
End Sub

これに手を加えたファイルを個人用マクロブックとして
登録しておくというのはいかがでしょう?
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : ポンタ  ■日付 : 03/2/28(金) 13:39  -------------------------------------------------------------------------
   別案です。

勉強を兼ねてVBスクリプトで作ってみました。

MyPath = "C:\My Documents\"
MyName = "毎月一日零時.LOG"

は環境に合わせて書き換えてください。

以下のコードをメモ帳に貼り付けて、
       ~~~~~~~~
「毎月一日零時.VBS」という名前で保存してください。

できたファイルをダブルクリックして、
動作を確認してみてください。

Set objFs = WScript.CreateObject("Scripting.FileSystemObject")
MyPath = "C:\My Documents\"
MyName = "毎月一日零時.LOG"
If objFs.FileExists(MyPath & MyName) Then
 Set objText = objFs.OpenTextFile(MyPath & MyName)
 MyDate = objText.ReadLine
 objText.Close
 If MyDate < Left(Date, 7) Then
    Main
 Else
    MsgBox("今月の処理は終わっています")
 End If
Else
 MsgBox("初めて起動されました")
End If
Set objText = objFs.CreateTextFile(MyPath & MyName,True)
objText.WriteLine(Left(Date, 7))
objText.Close

Sub Main()
 set objXL = Wscript.createobject("excel.application")
 objXL.Visible = True
 Set objBook = objXL.WorkBooks.Add
 objXL.Cells(1,1) = "月が変わりました"
End Sub
 ───────────────────────────────────────  ■題名 : Re:指定日指定時刻にマクロを自動実行  ■名前 : hana  ■日付 : 03/3/2(日) 20:03  -------------------------------------------------------------------------
   ポンタさんこんばんは。間が空いてしまってすみません。
2案もありがとうございました。2つ目のVBスクリプト
ですが、「文字が正しくありません(5行目1文字目)」
と出てしまいうまく試せませんでした。。VBスクリプト
自体使ったことがなかったのでよくわかりませんし、今回は
1つ目に教えて頂いたマクロでやってみようかと思います。
色々教えていただきいつも勉強させて頂いています。

この度もありがとうございました!
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 817