
AccessVBAでは、コマンドボタンで「AutoRepeat」プロパティを使えば、
コマンドボタンを押しっぱなしにしている間、繰り返して処理を続けます。
しかし、
Excelの場合、コマンドボタンにAutoRepeatのような「繰り返しプロパティ」がありません。
このような場合、どのように同様な処理を行うのでしょうか?
簡単な作動例のコードを教えていただけると幸いです。
たとえば。作動のイメージですが。
Sub test1()
range("A1")=range("A1") + 1
End Sub
このtest1というマクロを、コマンドボタンを押しっぱなしにしている間、
繰り返して足し続けるような処理です。
コマンドボタンを1回クリックすれば、セルA1の数字は1増えますし、
押しっぱなしにしている間はカウントが増え続けます。
No.1ベストアンサー
- 回答日時:
こんばんは。
>このtest1というマクロを、コマンドボタンを押しっぱなしにしている間、
>繰り返して足し続けるような処理です。
私は、押し続けて、作動するボタンは知りません。
Excelの場合は、私は、こんな風にします。
'-------------------------------------------
Private Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
Dim flg As Boolean
Private Sub CommandButton1_Click()
flg = Not flg
CommandButton1.Caption = flg
If flg Then
Call Test1
End If
End Sub
Sub Test1()
Do
Range("A1").Value = Range("A1").Value + 1
Sleep 500 'スピードを調整
DoEvents
Loop While flg
End Sub
No.3
- 回答日時:
こんにちは。
AccessのAutoRepeatは知りませんが、Excelで無理やりやるなら
コマンドボタンのmousedown、keydown(press)のイベントを
使えばできるかと思います。
はずしてたらすみません。
No.2
- 回答日時:
押しっぱなしの間、処理を続けるというのはないと思います。
通常は、開始ボタンと終了ボタンをつくって対応すると思います。
'処理続行フラグ。
Private GoFlag As Boolean
'開始ボタン
Private Sub CommandButton1_Click()
'フラグを処理続行に設定
GoFlag = True
Do While GoFlag
Call test1
'これがないと、コマンドボタン2が押せない
'DoEvents
Loop
End Sub
'終了ボタン
Private Sub CommandButton2_Click()
'フラグを処理終了に設定
GoFlag = False
End Sub
Sub test1()
Range("A1") = Range("A1") + 1
End Sub
という感じでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Visual Basic(VBA) VBA 登録ボタンを省略してエンターキーで作業 4 2022/07/09 22:29
- Excel(エクセル) マクロで謎の現象が起きていて困ってます。 エクセルで作ったボタンを押すとマクロが動いて処理をしてくれ 3 2023/06/22 17:28
- Excel(エクセル) エクセルVBA 複数行にまたがっている選択を判定するには 2 2023/05/21 21:54
- Visual Basic(VBA) Powerpointでランダムな数字の結果を表示するマクロ 2 2023/08/04 10:04
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Excel(エクセル) excelVBAについて。 8 2022/12/11 13:47
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
このQ&Aを見た人はこんなQ&Aも見ています
-
コマンドボタンの長押し
Visual Basic(VBA)
-
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
6
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
7
excelで セルの移動時にマクロ実行を設定したい。
Excel(エクセル)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
10
VBA(エクセル)のユーザーフォームの固定
Visual Basic(VBA)
-
11
マクロボタンを押すたびに違う動作をしたい
Excel(エクセル)
-
12
エクセル フォームの ボタンがすぐにはへこまないのはなぜ?
Excel(エクセル)
-
13
エクセル マクロの同時実行について
Visual Basic(VBA)
-
14
マクロ実行時、ユーザーフォームにラベルのテキストが表示されません。
Access(アクセス)
-
15
Access VBAでタブコントロールで選択するタブをしていするには。
Access(アクセス)
-
16
コマンドボタンのEnterイベント後に、フォーカスを移動したい。
その他(Microsoft Office)
-
17
ListBoxで改行したい
Visual Basic(VBA)
-
18
マクロ 実行ボタンを押さずに常に実行
Excel(エクセル)
-
19
どこにもフォーカスを当てたくない
Access(アクセス)
-
20
オブジェクト型の変数にフォームを入れたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel:コマンドボタンの移動
-
スクロールしてもボタンを常に...
-
Flash、ボタンで画像を表示…
-
XSI 6 Foundationを購入したの...
-
Excel VBA --- コマンドボタ...
-
コマンドボタンを押すたびに大...
-
エクセルでマクロを使わずに複...
-
Accessユーザーフォームでコマ...
-
押したボタンの位置取得(共通の...
-
PPTのコマンドボタンがクリック...
-
ShowAllDataのエラーを回避したい
-
コマンドボタンがあるかどうか...
-
FLASH5で、ボタンにロールアウ...
-
FLASHドロップダウン(?)メニ...
-
エクセル住所録でワードのハガ...
-
ハイパーリンクのボタン作成
-
EXCELでNo.を変えて印刷したい
-
エクセルVBAでOptionButtonのオ...
-
エクセルVBA
-
コマンドボタンの画像も拡大表...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドボタンを押すたびに大...
-
Excel:コマンドボタンの移動
-
スクロールしてもボタンを常に...
-
押したボタンの位置取得(共通の...
-
PPTのコマンドボタンがクリック...
-
Accessのコマンドボタンの立体...
-
Excel VBA --- コマンドボタ...
-
コマンドボタンがあるかどうか...
-
エクセルVBAでOptionButtonのオ...
-
ShowAllDataのエラーを回避したい
-
チェックボックスで「いずれか1...
-
コマンドボタンで「終了ボタン...
-
エクセルVBA
-
EXCELでNo.を変えて印刷したい
-
エクセルでマクロを使わずに複...
-
Wordでドラッグした文字列を括...
-
Accessユーザーフォームでコマ...
-
エクセルでマクロボタンを動か...
-
エクセルのコマンドボタンの位...
-
エクセルVBA シート上にあるコ...
おすすめ情報