
エクセルのVBAを使ってやっているのですが、セルの値を40秒毎に1づつ上げ、ボタンで一時停止、再開,リセットという感じをつくりたいのですがなかなかできず困ってます。
どなたか教えて下さい。宜しくお願い致します。
エクセル2019、Win10
ちなみに今こんな感じでいれていてセルの値は1づつ上がります。
Dim SchTime As Date
Sub Test()
With Sheets(1)
.Range("A1").Value = .Range("A1") + 1
End With
SchTime = Now + TimeSerial(0, 0, 40)
Application.OnTime SchTime, "test"
End Sub
No.2ベストアンサー
- 回答日時:
以下のようにしてください。
一時停止のボタンはsub 一時停止に割り当ててください。
再開のボタンはsub 再開に割り当ててください。
リセットのボタンはsub リセットに割り当ててください。
(リセットの意味はセルAの値のリセットと解釈しました)
--------------------------------------
Dim SchTime As Date
Dim execFlag As Boolean
Sub Test()
If execFlag = False Then Exit Sub
With Sheets(1)
.Range("A1").Value = .Range("A1") + 1
End With
SchTime = Now + TimeSerial(0, 0, 40)
Application.OnTime SchTime, "test"
End Sub
Sub 一時停止()
execFlag = False
End Sub
Sub 再開()
execFlag = True
Call Test
End Sub
Sub リセット()
With Sheets(1)
.Range("A1").Value = ""
End With
End Sub
No.1
- 回答日時:
こんにちは
>ボタンで一時停止、再開,リセットという感じをつくりたいのですが
>なかなかできず困ってます。
各ボタン押し下げ時の処理(=Sub)やご提示のカウントアップの処理を連携させる必要があります。
概ね以下のような感じで、実現できるのではないかと思います。
まず、シートモジュール共通の変数(=flag)を追加で定義しておきます。
そのうえで、各処理を以下のようなものにします。
1)ご提示のカウントアップ(=Test)を、flagを参照してFalseの場合はカウントアップ及び再コールをしないように修正します。(Trueの場合のみ実行)
2)再開(開始)ボタンの処理
flagをTrueにセットし、40秒後にTestをコール
3)一時停止ボタンの処理
flagをFalseにセット
4)リセットボタンの処理
カウンタ(=A1セル)の値を初期値(=0とか1など?)にセットします。
(必要ならば、flagもFalseにセットします。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBAでオプションボタンによって...
-
閉じると「+」になり開くと「-...
-
VBA(エクセル)で自動的にボタン...
-
Excel VBA Application.caller...
-
VB.NET テキストボックスの入力...
-
ボタンをマウスで押し続けたと...
-
MouseDownとMouseMoveイベント...
-
セルをマクロのボタンにしたい。
-
バックスペース機能の作り方
-
ユーザーフォームに別シートか...
-
VBでのエラー音の消し方
-
テキストボックスの中身消去
-
コマンドボタンやイメージにマ...
-
senderに含まれているハンドル...
-
VBAのボタンの位置が変わって困...
-
チェックボックスで指定出来る...
-
エクセルVBAでユーザーフォーム...
-
VBA CommandButtonの文字ずれ
-
フォームから別のフォームを呼...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
Excel VBA Application.caller...
-
VBA CommandButtonの文字ずれ
-
[VB.net] ボタン(Flat)のEnable...
-
コマンドボタンやイメージにマ...
-
VBAのボタンの位置が変わって困...
-
VB.net でトグルボタンを実現し...
-
フォームの再読み込み
-
閉じると「+」になり開くと「-...
-
アイコンとボタンの違い
-
ボタン
-
Access VBA でデータペーストを...
-
セルをマクロのボタンにしたい。
-
C#プログラムで、ボタンをショ...
-
ユーザーフォームに別シートか...
-
Excel マクロ 閉じるボタン
-
VBAで多数のプログラムを一つの...
-
ボタンをマウスで押し続けたと...
-
ASP.Net ラベルの内容をすぐに...
おすすめ情報