- 締切済み
Accesss97の更新後処理
WinNT4.0+MS-ACCESS97で開発しています。 あるフォームのテキスト項目(仮に商品コードとします)で、 その入力内容のチェック記述を更新後処理でおこなって、 NGだったらその項目にSetFocusする処理です。 だいたい以下のようなものです。 (商品コードの更新後処理) IF 商品コードチェックNG THEN : : 商品コード.SetFocus ・・・(1) Exit Fucntion END IF ここの(1)の処理が走った場合、たしかに商品コードには フォーカス遷移はするのですが、その項目を修正しようとして DELキーを押しても反応しません。 一度矢印キーや、他のキーを押すとDELキーも使えるようになります。 (1)の処理後にDELキーを使えるようにするにはどうすればいいのでしょうか? どなたかこれを回避する方法をご存知の方、もしくは原因が分かる方、お助けください。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- amania
- ベストアンサー率22% (2/9)
カーソルの位置が入力値(フル桁)の後ろに、ありませんか? 123| こんな状態 (|がカーソル) 通常フォーカス移動していくと、フォーカスの来た項目が 反転表示されているはずです。 この状態だとDelキーも使用できますよね。 反転状態(選択)になるようにしてあげたらよいのです。 簡単な方法としては、別の項目に移動して、またフォーカスを戻すというのが有効ではないかと思います。 VBであれば、SelLengthとSelStartプロパティで反転させられるのですが、AccessのTextにはないのではないかと思います。 有効なプロパティなどがあるかもしれませんが、 不勉強なもので。。。 お役に立たないかもしれませんが。 VBAの質問にいろいろ答えてくれるHPがあるので、そちらでも調べられるとよいと思います。
- 参考URL:
- http://www.moug.net/
お礼
ありがとうございます。 なぜかカーソルは、一番前にきています。 別の項目に移動して戻す、というのも試しましたが結果は同じでした。 でもSelLengthとSelstartは使えそうですね。 ACCESSでできるかどうか試してみます。 参考URLにもいろいろ書いてありそうなので、みてみます。