Microsoft Access Club >Access一日一見 >このページ >次頁 <前項  サイト内検索


テキストボックス入力を半角アルファベットに限定する : 一日一見



入力フォームにテキスト型のテキストボックスを配置し、ユーザー入力の段階で半角のアルファベットに限定したい場合があります。一般的に、ユーザー入力の事前チェックは更新前処理イベントを用いる方法と入力規則プロパティを用いる方法とがありますが、今回、入力規則プロパティを用いて半角アルファベットに限定する方法をご紹介します。

全角文字から半角文字への変換と半角文字のチェック方法

入力された文字が半角であるか否かはStrComp関数、全角文字から半角文字への変換はStrConv関数を用いて行います。

  1. 全角文字を半角文字に変換する場合は、StrConv関数を用います。
    例、StrConv([フィールド名],vbnarrow)
    vbNarrow定数(値:8)は、文字列内の全角文字 (2 バイト) を半角文字 (1 バイト) に変換します。
  2. 全て半角文字に変換可能であるかチェックするのは、StrComp関数を用います。
    例、StrComp([フィールド名],StrConv([フィールド名]),vbBinaryCompare))
    vbBinaryCompare定数(値:0)は、文字列比較の並べ替え順序は、バイナリ文字コードのコード順によって行います。

入力規則プロパティの設定

  1. フォームをデザインビューモードで開きます。
  2. テキストボックスのプロパティダイアログを表示します。
  3. 入力規則プロパティ欄に以下のように記述します。
    StrComp([フィールド名],StrConv([フィールド名],8),0)=0
  4. 全ての入力文字が半角に変換されている場合は0が返されます。
  5. 続いて、AND 演算子を用いて以下のように記述します。
     And [フィールド名] Not Like "*[!A-Za-z]*"
  6. アルファベット(A-Za-z)以外が入力された場合、エラーメッセージが返されます。

エラーメッセージプロパティの設定

  1. 入力プロパティに反する場合に表示させるメッセージを記述します。

留意点

以下のような留意点がありますので注意して下さい。

  1. エラーになった入力文字は消去されません。
  2. 空白文字が入力された場合であっても、入力規則に違反します。
    これを避けるためには、以下のようにNull値を用います。
    Is Null Or StrComp(・・・(省略)

動作確認

  1. 文字列 15aT を入力します。
  2. 以下のメッセージが表示され、フォーカスを移動させることができません。

関連ページ

2005/08/04

ページの先頭へ 前ページへ戻る

 


テキストボックス入力を半角アルファベットに限定する : 一日一見


-Microsoft Access Club-

cPanel あるいは PLESKコントロールパネルをインストールした専用レンタルサーバのディスカウントプランを期間限定で公開しています。
cPanel・PLESKコントロールパネルを備えた専用レンタルサーバ....。