|
▼ハナ さん:
書いたの忘れてました。 ^ ^;;
> ・最初に相談したようにExitイベントのCancel = TRUE
> になるとSetFocusが効かなくなる & このイベントプロシジャー
> の中ではSETFOCUSが効かないみたいなんです
調べました。バグくさいですね。XL2Kでも再現しますから。
ユーザー フォームのイベントで SetFocus メソッドが正しく動作しない場合がある
http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B436443
> ・エラー入力した場合、オペレーターから見て、画面クリアが優先処理
> になる(正規コードを入れなおすためにはTextBoxをあらためて
> 選択する)といった問題が発生します
私が最初に書いたようなオーソドックスな方法の話になりますが、
コンボボックスを使用してあらかじめデータを用意して置き、
MatchEntry プロパティを設定すれば入力はかなり楽になります。
又どうしてもTextBoxなら、「TextBoxをあらためて選択する」という作業を
プログラムでやってやればよいだけのことです。ついでにSelStart、SelLength プロパティ
で、選択状態にしてやれば再入力だけです。
> ・Cancel値を使わなければ最大の問題である”正規コードを入れなければ
> 抜けられない”問題はneptuneさんの思いつかれた方法で解決するようです。
>そのへん、いかがなものなんでしょう・・・・
ん〜先のバグの回避方法ということですよね。
今思いつくのは、UserForm上のActiveControlを監視することですが、
これは、やれば出来るとは思いますが、実用上かなり問題あると思います。
やはり、私が最初に書いたようなオーソドックスな方法を取るか、
ichinoseさんの方法を利用させてもらうという方法になりますか。
|
|