さらにセルに入力する文字数も制限する
セルに全角以外の値を入力する制限をすることができました。
さらに今度はセルに入力する文字数を制限する入力規則を定義しましょう。
セルA2を選択後、再び「データの入力規則」を開きます。
「数式」を「=(A2=JIS(A2))* (LEN(A2)=5)」と変更します。
「LEN関数」はセルに格納されている文字列の文字数を取得する関数です。

数式の意味は、「A2セルが全角」かつ(*、掛けるを表す演算子)「A2セルの文字列が5である」を満たさない値が入力されると、エラーが表示されるという意味です。

文字列を5文字以上や半角のみに制限といった設定も可能
もちろん「LEN(A2)>=5」とすると、文字列が5文字以上でないとエラー表示がされ、セルに値を入力することができない、といった設定も可能です。
「データの入力規則」設定後、「書式のコピー/貼り付け」または「オートフィル」によるコピーをすると、すべてのセルの入力規則に「全角」かつ「5文字」の規則を設定することが可能です。

ちなみにセルの右上、緑▲マークはエラー表示です。
「数値が文字列として保存されています」と表示されますが、オートフィルによる連番は可能です。

ただ、文字列として保存されている数値(のような文字列)は、エクセルのステータスバーによる自動計算ができなくなりますのでご注意ください。

また、「JIS関数」の代わりに「ASC関数」を利用すれば逆に「半角」のみに入力制限をかけることもできます。
「ASC関数」は「JIS関数」とは反対に、全角文字列を半角文字列に変換する関数です。
「データの入力規則」では、設定次第でさまざまな入力規則を設定することが可能になります。

エクセルで活用できるテクニックはたくさんあります。
エクセルでこんなことがしたい、というリクエストがあればお気軽にコメントいただけたら可能な限り紹介いたします。
コメント