• ベストアンサー

Excel:セルへの入力規則

Excel2003です。 [データ]→[入力規則]→[設定]で入力値の種類を「ユーザー設定」にし、数式に「=LENB(E3)<=16」 さらに [データ]→[入力規則]→[日本語入力]でIME 日本語入力を半角カタカナに設定し、半角カタカナ という設定でE3セルを半角カタカナで16文字以内に制約させています。 しかし、この設定ですと確かに文字種は半角カタカナになりますが、文字種を変更することも出来てしまいます。 これを半角カタカナ以外は入力禁止にすることは出来ないのでしょうか?同時に半角カタカナ16文字以内、という制約付です。 よろしくお願いします。

  • Youyou
  • お礼率64% (2254/3473)

質問者が選んだベストアンサー

  • ベストアンサー
noname#52504
noname#52504
回答No.4

E3セルについて、  ・半角カタカナ以外の入力を禁止する  ・16文字を超える入力を禁止する データ>入力規則>入力値の種類:ユーザー設定 数式について、 ●A案:コード番号で判定  =AND(LEN(E3)<=16,161<=MIN(INDEX(CODE(MID(E3,ROW(INDIRECT("$1:$"&LEN(E3))),1)),)),223>=MAX(INDEX(CODE(MID(E3,ROW(INDIRECT("$1:$"&LEN(E3))),1)),)))  ※「数式はエラーと判断されます。続けますか?」   というメッセージが出てもそのまま「はい」で続行。  ※半角句点"。"のコードが161、半角半濁音記号"゜"のコードが223なので、   入力しようとする文字列の各文字についてコードをとり、   それらの最大値が223以下、最小値が161以上の場合のみ許可します。  ※当然ですが、半角英数字は禁止されます。  ※上記数式では、半角記号のうち、   ・句読点"。","、"   ・鍵括弧"「","」"   ・中黒"・"   ・長音記号"ー"   ・濁音記号"゛"   ・半濁音記号"゜"   のみ許可されます。 ●B案:許可する文字のリストを予め書き出しておいて判定  =AND(LEN(E3)<=16,SUMPRODUCT(--ISERROR(FIND(MID(E3,ROW(INDIRECT("$1:$"&LEN(E3))),1),"。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゛゜")))=0)  ※入力しようとする文字列の各文字について、許可リストにあるか否かを判定し、   すべての文字が許可リストあれば、許可  ※上記数式の文字列部分は、当然半角で入力してください。   (半角カナで投稿できないので全角にしています) A,BいずれもExcel2003で動作確認済

Youyou
質問者

お礼

すばらしいです。ありがとうございました。

その他の回答 (3)

  • korolo
  • ベストアンサー率42% (39/92)
回答No.3

ANo.1、2です。度々失礼します。 入力規則だけでは無理がありそうなので、やり方を変えてみてはいかがでしょうか。 ●入力規則設定した入力セルと、それを規定に添って別(隣)のセルへ変換します。 (1)入力セルは、全角ひらがなのみ入力可能とする。 --方法は以下-- [データ]→[入力規則]→[設定]で入力値の種類を「ユーザー設定」にし、数式に「=IF(E3=ASC(E3),LEN(E3)<LENB(E3),LEN(E3)=LENB(E3))」 さらに [データ]→[入力規則]→[日本語入力]でIME 日本語入力を「ひらがな」に設定。 これで全角ひらがなのみ入力可能になります。 (2)別(隣)のセルで半角カタカナに変換、且17文字以降をカットする。 --方法は以下-- セルF3へ:=LEFT(ASC(PHONETIC(E3)),16) 以上ですが、ミスがあったらごめんなさい。

  • korolo
  • ベストアンサー率42% (39/92)
回答No.2

ANo.1です。 > [データ]→[入力規則]→[設定]で入力値の種類を「ユーザー設定」にし、数式に「=LENB(E3)<=16」 > さらに > [データ]→[入力規則]→[日本語入力]でIME 日本語入力を半角カタカナに設定し、半角カタカナ > という設定でE3セルを半角カタカナで16文字以内に制約させています。 ↑↑↑ この状態で > 文字種を変更することも出来てしまいます。 フォントを変更できてしまうという事ではないのですか? フォントを含め書式を変えられないようにする方法ですが??? 意味が違いましたか?

  • korolo
  • ベストアンサー率42% (39/92)
回答No.1

「書式」[セル][保護][ロック]のチェックを外す--[OK] 「ツール」[保護][シートの保護]--[OK] これで入力は出来るが、書式の変更が出来なくなります。

Youyou
質問者

補足

これはシートが保護されている中で特定のセルへの入力を許可するだけの設定です。 そうではなく、特定のセルへの入力文字種を半角カタカナ以外許可させないようにする設定方法を尋ねているのです。 よろしくお願いします。

関連するQ&A

  • Excel:関数と入力規則

    セル[A2]に入力規則>設定タブ>入力値の種類で「ユーザー設定」、数式に「=LENB(A2)<=16」 と設定しています。 この設定によりこのセルには全角8文字もしくは半角16文字を超えての入力を禁止させています。 その隣のセル[B2]にはセル[A2]の入力値がそのまま自動表示されるように「=A2」とし、かつ入力規則>設定タブ>入力値の種類で「ユーザー設定」、数式に「=LENB(A2)<=12」 と設定しています。 この設定によりこのセルには全角6文字もしくは半角12文字を超えての入力を禁止させています。 例えば、セル[A2]への入力文字が全角6文字以内であれば問題ないのですが、8文字になった場合、セル[B2]の入力規則が無視され、8文字で表示されてしまうのです。 これは仕方がないのでしょうか? ちなみにセル[B2]の関数を無視して直接セル[B2]に入力するのは入力規則が正常に反応し、全角7文字以上は入力できません。 何か良い方法があれば御教示願います。

  • Excel2010で入力規則の日本語入力が効かない

    OS・・・Windows XP IME・・・Baidu IME Excel2010について質問です。 会社のパソコンで、Excel2010を使って社員名簿を作成しています。 表の一行目に氏名・ローマ字表記・所属部署・社内メールアドレスなどの項目があり、項目の列ごとに氏名の列は「ひらがな」、ローマ字表記の列は「半角英数」などの入力規則を設定したいのですが、「データ⇒入力規則⇒日本語入力タブ」で日本語入力を変更しても、変更が効きません。 具体的には、「ひらがな(またはオン)」設定にした列から「半角英数字(またはオフ、無効)」に設定した列に移動した時は、IMEの入力モードが「あ」から「_A」へ変わるのですが、逆に「半角英数字」の列から「ひらがな」の列に移動した時は、入力モードが「_A」のままになってしまい、半角/全角キーでモードを変えないといけません。 BaiduIMEとMicrosoftの相性の問題でしょうか。MS IMEも入っているのですが、できればBaiduのほうを使いたいと思っています。 どうすればうまく設定できるでしょうか。 アドバイスをお願いします。

  • 複数条件の入力規則について

    セル内を以下の条件で入力規則を設定しようとしました。 ①全角文字で18文字、半角文字で36文字以上の入力を制限する ②セル内改行を禁止する ①と②は各々個別に制限動作するようにする データの入力規則で、入力値の種類を「ユーザー設定」にし、数式を 「=OR(LENB(A1)<=36,COUNTIF(A1,"*"&CHAR(10)&"*")=0)」と設定したところ、 ①全角文字で18文字、半角文字で36文字以上の文字列が入力出来てしまう ②全角文字で18文字、半角文字で36文字以内でセル内改行が出来てしまう ③全角文字で18文字、半角文字で36文字以上でセル内改行が禁止される というように、私の意図した通りの制限動作になりませんでした。 重いあぐねて、数式を 「=AND(LENB(A1)<=36,COUNTIF(A1,"*"&CHAR(10)&"*")=0)」と設定したら、 正常に動作しました。 これでは、私の知識では、「OR」と「AND」の使い方が真逆になっているとしか思えません。 この浅薄な私の勘違いを明瞭に説明いただける方がいらっしゃれば、ご教授よろしくお願いたします。

  • EXCEL入力規則で文字数制限

    EXCEL2002です。 A列に入力規則をかけ、全角20文字、半角40文字以内にしたいと思っています。 「エクセル技道場→入力規則→全角5文字、半角10文字」を参考にさせていただき、以下の式で入力規則のユーザー設定を行いました。 =AND(ISTEXT(A1),LENB(A1)<=40) この場合、最初の文字が半角の場合に制限数以下でもエラーメッセージが出てしまいます。 最初の文字が全角でも半角でも制限数以下であればエラーメッセージが出ないようにする方法はありますか? よろしくお願いします。 http://www2.odn.ne.jp/excel/waza/validation.html#SEC10

  • 入力規則が無効に

    Excel2003を使ってるのですが 作ったデータに入力規則などの設定をしているはずなのに ページ内でセルを移動させると設定した規則が反映されない事があります。 例えば・・日本語入力オンにしてるのにセル移動後、半角英数字になる。 この現象ってウィルスなのでしょうか?

  • エクセルの入力規則で、カタカナの半角と全角を同じカタカナとして認識させるには、どうすればいいのですか?教えてください。

    エクセルで、表の中に名前などを入力してもらうのを作り、入力規則を設定して、同じ名前などが入らないようにしたのですが、入力のときに、入力したと半角のカタカナと全角のカタカナで入力規則が働かず、そのまま入力してしまい、困っています。だれか半角カタカナと全角カタカナを入力規則で、同じ文字と認識させる方法を教えてください。

  • Excel2003 強烈な入力規則

    お世話になります。 表題の件でご相談が御座います。 「通常の入力規則」ではなく、「強烈な入力規則」の方法を模索しています。 通常の入力規則では、例え「半角英数」という設定をしていても「全角英数」をコピペで貼り付けたら 全角のまま貼り付けられてしまいますよね? これを「半角でないと貼り付けられない」では手間がかかり困るので、「半角にして張り付けてしまう」ぐらいの 強力な入力規則の方法を探しております。 そんな方法は御座いませんでしょうか? ご存知の方がいらっしゃいましたら ご教示ください。 宜しくお願い致します。

  • 入力規則で半角数字のみ受け付ける方法

    今エクセルで、表を作っています。 ある行のみ半角数字しか入力できないようにしたいので入力規則「日本語入力オフ」にしたのですがアクティブにすると日本語入力になるだけで日本語入力も可能です。それを常に半角数字のみをいれるようにするにはどうすればいいでしょうか。  また、電話番号のみ入力を受け付けるという形にしたい時、例えば○○○-○○○ー○○○○と入力するものしか受付ないとする(文字の入力は受け付けない、エラーメッセージが出る)にはどうすればいいでしょうか。入力規則の設定のタブで「ユーザー設定」で###-###-####としたのですがこれでは駄目みたいです。基本的な事が分からないもので、どなたか教えて下さい!!

  • パソコンを買い変え、excel2007に引っ越したデータのことなのです

    パソコンを買い変え、excel2007に引っ越したデータのことなのですが、以前はこの列は数字、この列は半角カタカナ・・・というように列毎に入力する文字の種類を設定していました。それが無効になっていたのでもう一回設定しなおそうとしてデータの入力規則を開くと、「設定」「入力時メッセージ」「エラーメッセージ」のタブだけで、「日本語入力」のタブがありません。特にこのファイルで何かをいじった覚えはないのですが、コンピューターの初期設定等で何かやらかしてしまったのでしょうか? よく使うファイルなので大変不便で困っています。 どうやったら日本語入力タブが出るようにできるかわかる方、どうぞよろしくお願いいたします。

  • 「Excel」の文字入力の手間を省きたいのですが…

    「Excel2000」で文字を入力する際、以前入力したものを ひっぱってくるので困っています。 「データ」の「入力規則」で、日本語入力を「半角カタカナ」に 設定しているのですが、 例えば、前のセルに「オオサカシチュウオウク」と入力していたとして、 次のセルには「オオサカシ」だけ入力したいのに、勝手に「チュウオウク」 まで表示されてしまいます。 その際「Delete」で消すのですが、 確定の為、「Enter」を押した時点で 再び「オオサカシチュウオウク」と表れてきます。 そこでもう一度「Delete」を押し、 再び「Enter」を押してやっと「オオサカシ」と入力出来ます。 学習してくれるのは有り難いのですが、一度の「Delete」で 済む方法はないでしょうか?

専門家に質問してみよう