時間になったらブックを開いてマクロを実行【寝坊対策】

時間になったらブックを開いてマクロを実行【寝坊対策】タイトルから、僕の今日のサボりの原因がバレてしまいそうですが(笑
指定した時刻になったら、ファイルを開いて実行するマクロを作ります。

ボタン一発押すだけなんだし、寝坊しなきゃいいだけの話なんだけど。
今日みたいな思いは絶対にしたくないもん。
ストラテジーが増えたら、どっちにしろ必須になるだろうし。

OnTimeメソッド

onTimeメソッドの使い方は簡単です。
あまり使ったことはないけど(笑

Application.OnTime EarliestTime:= _
TimeValue(“8:50“), Procedure:=”実行するマクロ

基本的な構文はこんな感じ。
太文字の時刻と実行したいマクロ(プロシージャ名)を代えればOK。

 icon-check-square-o サンプルマクロ

Sub Auto_Open()
    Application.OnTime EarliestTime:= _
    TimeValue("8:50"), Procedure:="実行するマクロ"
End Sub


Sub 実行するマクロ()
    MsgBox ("まだ寝てるの!?" & vbCrLf & "ダウが大幅安よ。")
End Sub

簡単にコードを解説します。

標準モジュールにAuto_Openという名のプロシージャ名をつけることで、Excelのファイルを開いたときにマクロを自動的に実行してくれます。
標準モジュールではなく、ThisWorkbookにWorkbook_Openというプロシージャを記述する方法もあります。

Excelのファイルを開いてから、マクロを実行しないでもOK。
Excelファイルを開きっぱなしのまま寝ればいい。
これで安心して寝坊できます。

えっ?パソコンつけっぱなしだと電気代がもったいない?
朝、自動でパソコンも立ち上げたい?

BIOSっていう設定で、割と簡単にできるけど…
それくらいは自分でしなさい!

まあ、スマホから遠隔でパソコンの電源を立ち上げられたら、すごく便利そうなのだけれども。
これは有線LANだと、かなりハードルが高くて挫折しました。

無線LANだと簡単っぽいんですけどね。
まあ、簡単に遠隔で操作できるようだとセキュリティー面でも心配か…

あと、vbCrLfはMsgBox内で改行するコードです。
知らない人も多いと思います、それはあまり使わないから(笑

Workbooks.Open

話しが少しそれてしまいましたので、次に進みます。

指定時刻になったらマクロを実行するファイルと、売買サインやら発注をするファイルを別にしたいときがありますよね。
そんなときは、Workbooks.Openメソッドを使って、指定したブックを開きます。

Workbooks.Open “場所:ブック名.xlsm”

場所はドライブ名など。あとはブック名と拡張子を指定します。
ちなみにExcelの場合、ファイル=ブックと覚えておいて大丈夫っぽいです。

Excelファイルの上にマウスカーソルを合わせて右クリック ⇒ プロパティで場所とブック名の確認はできます。

 icon-check-square-o サンプルマクロ
Sub Auto_Open()
Application.OnTime EarliestTime:= _
TimeValue(“0:38″), Procedure:=”実行するマクロ”
End Sub

Sub 実行するマクロ()
Workbooks.Open “C:\Users\PCUser\Desktop\test.xlsm”

Workbooks(“test.xlsm”).Activate
End Sub

コメントを残す

メールアドレスが公開されることはありません。