質問: いつも参考にさせていただいております。 Excel 2010を使っています。 あるセルをクリックすると、そのセル内容を他のセルに表示する機能を実装しています。この動作自体には問題はないのですが、セルをクリックして他のセルに表示した後、少しの間は次のセルをクリックできないようにしたいのです。 そこで、application.waitを使ってみました。waitが掛かっている間は、マウスカーソルが砂時計になって一見操作できないようですが、砂時計の間にクリックしたセルが、待ち時間が終了した瞬間に受付される(つまり砂時計の間のクリックはキャンセルされておらず、時間切れを待っているだけ)ということがわかりました。 問題を解決するには、そもそもクリックでセルの値を読めないようにするか、Waitの時間切れのときに操作のバッファ?をクリアして「なかったことにする」かだと思います。なるべくシンプルに構成したいのですが、みなさまどのようにお考えになりますか?
回答: >少しの間は次のセルをクリックできないようにしたいのです。 そういう場合は「お待ち下さい」と表示する、モーダルなユーザーフォームを一定時間だけ表示します。 モーダルなユーザーフォームを表示中は、エクセルのシートをアクティブに出来ない(クリックできない。触れない)ので、セルをクリック出来ません。