
こんにちは、Excel Home&Buisiness 2019を使っています。
現在以下のようなマクロで一定時刻でマクロを実行させています。
' 開始
Application.OnTime EarliestTime:=TimeValue("03:59:40"), Procedure:="自動計算開始"
これは時刻のみ指定ですが、
やりたいのは
毎月初めの朝6時
毎週初めの朝6時 にもプロシージャを指定して実行させたいですがどうしたら良いでしょうか?
出来ればマクロだけでやりたいです。
詳しい方、よろしくお願い致します。
No.4ベストアンサー
- 回答日時:
・・・うんん
こんな感じ
Sub 毎日実行()
Application.OnTime EarliestTime:=TimeValue("6:00:00"), Procedure:="自動計算開始"
Sub 自動計算開始()
If Day(Date) = 1 Or Weekday(Date) = 2 Then ’毎月1日と月曜日に実行
'メイン処理
ありがとうございます。
毎日実行は出来てるとして、毎月実行するものと、毎週実行するものが違うのでこんな感じで大丈夫でしょうか?
Sub 月初めに実行()
If Day(Date) = 1 Then Application.OnTime EarliestTime:=TimeValue("6:00:00"), Procedure:="月初めに実行"
Else
End If
End Sub
Sub 週初めに実行()
Weekday(Date) = 2 Then Application.OnTime EarliestTime:=TimeValue("6:00:00"), Procedure:="週初めに実行"
Else
End If
End Sub
No.3
- 回答日時:
こんばんは
Application.OnTime で6時に毎日実行して
実行先プロシージャで条件分岐すれば、出来るのでは・・
月の初めと週の初めを取得する方法はご存知ですか
今月の1日を取得
Debug.Print DateSerial(Year(Date), Month(Date), 1)
週の基準値を取得
Debug.Print Weekday(Date) '1は日曜日
回答ありがとうございます。
ちょっとよく解らないのですが、
Debug.Print DateSerial(Year(Date), Month(Date), 1) と書いておいて、もしDateSerial = 1なら Application.OnTime を実行しなさい、みたいな感じでしょうか?
Sub 毎月1日に実行()
If DateSerial = 1 , then
Application.OnTime EarliestTime:=TimeValue("6:00:00"), Procedure:="自動計算開始"
Else
End If
End Sub
No.1
- 回答日時:
"自動計算開始"の冒頭に条件分岐を入れれば良いのでは?
Dateから日付を取得して
1日なら"自動計算開始"の本体実行
違うなら終了
Weeldayから曜日を取得して
月曜(かな?)なら"自動計算開始"の本体実行
違うなら終了
みたいな。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/04 17:58
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/11 11:47
- その他(Microsoft Office) ワードのマクロについて教えてください。 1 2023/01/22 11:43
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/08/04 13:56
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセル マクロで指定日にメッセージ
Excel(エクセル)
-
TODAY()で設定したセルの日付が変わったらマクロを実施させたい
Visual Basic(VBA)
-
エクセルで定期的(30分おき)にマクロを実行させる方法は?
Excel(エクセル)
-
-
4
VBAのapplication.ontime メソッドでの日付を超えた設定方法について
Visual Basic(VBA)
-
5
期限を超えた日付に警告のメッセージボックスを出すVBAを教えてください
その他(プログラミング・Web制作)
-
6
エクセルファイルで指定期間に自動ポップアップメセージを出す
Excel(エクセル)
-
7
vba セルに入力した時間をマクロで受け取るには?
Excel(エクセル)
-
8
指定曜日にMsgBox表示は可能でしょうか?。
Excel(エクセル)
-
9
毎日指定時刻に自動でエクセルを開き、マクロを起動する方法
Visual Basic(VBA)
-
10
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
11
一行おきに貼り付ける 可能でしょうか
Visual Basic(VBA)
-
12
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
13
VBAで先月、先々月を求める方法
Visual Basic(VBA)
-
14
access テキストボックスの値取得
Access(アクセス)
-
15
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
16
ExcelVBAで毎月月初の最初にBookを開いたときに実行させたいと時はどうしたらよいのでしょうか。
その他(コンピューター・テクノロジー)
-
17
エクセルでVBAを使用して1分毎にファイルを保存するプログラムを書きた
Excel(エクセル)
-
18
Excelマクロをバックグラウンドで動かす方法
Excel(エクセル)
-
19
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
20
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のPCだけ動作しないVBAマク...
-
Excel・Word リサーチ機能を無...
-
一つのTeratermのマクロで複数...
-
エクセルで特定の列が0表示の場...
-
エクセルに張り付けた写真のフ...
-
メッセージボックスのOKボタ...
-
ExcelのVBA。public変数の値が...
-
Excel_マクロ_現在開いているシ...
-
Excel マクロ VBA プロシー...
-
オートフィルターとExcelマクロ...
-
IF関数を使ってマクロを実行さ...
-
エクセルのマクロでワードの任...
-
ExcelVBAの繰り返し処理でwebク...
-
Excelのセル値に基づいて図形の...
-
Excel マクロでShearePoint先の...
-
TERA TERMを隠す方法
-
ExcelVBAでPDFを閉じるソース
-
特定文字のある行の前に空白行...
-
ExcelVBA 図形をクリックした...
-
ピボットテーブルでの毎回可変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
Excel・Word リサーチ機能を無...
-
一つのTeratermのマクロで複数...
-
Excel_マクロ_現在開いているシ...
-
メッセージボックスのOKボタ...
-
Excel マクロ VBA プロシー...
-
ExcelのVBA。public変数の値が...
-
エクセルに張り付けた写真のフ...
-
エクセルで別のセルにあるふり...
-
ExcelVBAでPDFを閉じるソース
-
ダブルクリックで貼り付けた画...
-
Excel マクロでShearePoint先の...
-
TERA TERMを隠す方法
-
マクロ実行時、ユーザーフォー...
-
Excelのセル値に基づいて図形の...
-
特定文字のある行の前に空白行...
-
エクセルマクロでワードの一ペ...
-
エクセルで縦に並んだデータを...
-
Excel VBAからAccessマクロを実...
おすすめ情報
ありがとうございます。
二つまとめて実行して良いんですね、助かりました!