またすみません。
質問させていただきます
クリックイベントのボタンの連打ではVBAだと反応がにぶいんです。
ただ数値を増やしていくだけのボタンなのですけどクリックの連打は弱いものでしょうか?
割り当てられたキーに対しての反応はすこぶる良いのですが・・・
どうしてもクリックの反応を良くしたいのですが無理でしょうか?
どなたかお力添えよろしくお願いします。
VBAだとボタンにもダブルクリックイベントがありそうです。
ダブルクリックも対応させていますか?
Click イベントは MouseDown イベントと MouseUp イベントと比べてどのようなタイミングで起こるか考えてみてください。
皆さんお返事ありがとうございます
ガッさん
ダブルクリックイベントは反応が逆に遅くなるかと思いますがどうなんでしょう
じゃんぬねっとさん
大きなヒントありがとうございます
一番はmousedown設定のほうが反応が良いのでしょうか?
私まだ実際にコーディングして試していないので今晩にでも試して結果報告します
横槍ですが、ガッさんがおっしゃっているのは、
1クリック目:クリックイベント
2クリック目:ダブルクリックイベント
を使えば連打の判定ができるんじゃないか?ってことだと思うですよ
違ったらスンマソン
クリックイベントにしか処理を書いていないなら
連打した際、殆どがダブルクリックイベントと認識されてしまい
クリックイベントはたまにしか認識されない為、遅く感じる。。。
って可能性はありますね。
ガッさんと通ってみたさんも仰ってますけども。:)
#試してないので自信はありませんが|=x=;
なるほど
ガッさんの仰ることはダブルクリックイベントを外す?ってことでしょうか?
コード的に言えば
CommandButton1_Click()
だけで書いてますが
ダブルクリックイベントについてはよくわからない次第です
おそらく
CommandButton1_MouseDown
で連打対応ができるのかな?と思っています
いろいろ助言ありがとうございます
今晩いろいろと試してみてまた報告します!
?
まだ言ってる意味がわかっていないようですね・・・
試しにダブルクリックイベントにも同じ処理を書いてみたらどう?
サンプル)
Private Sub CommandButton1_Click()
Range("A1").Value = Range("A1") + 1
Range("C1").Value = Range("C1") + 1
End Sub
Private Sub CommandButton1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Range("B1").Value = Range("B1") + 1
Range("C1").Value = Range("C1") + 1
End Sub
Value がついてるとことないところが。。。
一行目をコピペしたから、全部そうなってますなw
報告します
結論から言うとダブルクリックイベントを使って簡単にできました
そして私がアホだったということがわかりました
ほんと理解が足りなかったせいです
大変皆様にはお手数かけました
こんな簡単な発想もできなかった自分が嫌になっちゃいます
ほんとありがとうございます m(__)m
また私みたいなアホな人がすぐにわかるように私なりに書かせていただきます
クリックの連打に対応するためにはまず
マウスのクリックに一番反応がいいMouseDownを使います
そしてクリックの連打をするということはダブルクリックもしてしまうということで
ダブルクリックイベントも設定していないと連打内でダブルクリックをした場合に処理を行わず、結果反応がにぶいと感じることになります
よってシングルクリックの設定にはMouseDownを
そしてダブルクリックの設定も同様にするということです
さらにただセルに1ずつ増やしていく処理なら
MouseDownには+1の処理で
DblClickには+2の処理を
すると連打にもちゃんと対応してくれるということでした
逆にわかりにくくなっていたらまたすみません
以上解決でした!
改めて皆様ありがとうございました
解決はしてらっしゃいますが、こんなのもありですかねー。
Private Sub CommandButton1_Click()
Range("A1").Value = Range("A1").Value + 1
End Sub
Private Sub CommandButton1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call CommandButton1_Click
Call CommandButton1_Click
End Sub
#DblClickで+2ってのはちょっと盲点だったかも(笑
#報告みたときに「なるほどー」とか思った|^_^
解決していますが一言。
・MouseDownイベントとClickイベントは完全に対応関係にあるわけではない。
だったと思います。
クリックイベントが発生するマウスの移動距離とかも考慮に入れないと…
※多分
ツイート | ![]() |