Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Excel 2016)
入力規則
投稿日時: 19/08/02 09:29:09
投稿者: YM1026

いつもお世話になっております。
入力規則についてお伺いします。
 
*****************************************************
<設定>
入力値の種類⇒リスト
元の値⇒01,02,03,04,05,06,07,08,09,10,11,12
 
<エラーメッセージ>
無効なデータが入力されたらエラーメッセージを表示する
にチェックを入れる
 
スタイル⇒停止
*****************************************************
 
で入力規則を設定したセルに
数値で1を直接入力すると、1が入ってしまいます。
01〜12(1月〜12月を2桁で表示したい)しか入力できない様にするにはどうしたらいいですか?
 
入力規則を設定したセルに、表示形式のユーザー設定で"00"とすれば
1を入力しても2桁に見えるのですが、その方法ではなくリストから選択したものだけ入力したいです。
 
よろしくお願いいたします。

回答
投稿日時: 19/08/02 10:03:44
投稿者: メジロ2

「元の値」を文字列("01"等)として設定する。
でいけると思います。

回答
投稿日時: 19/08/02 10:11:47
投稿者: 半平太

>表示形式のユーザー設定で"00"とすれば
 
それがダメなら、セルの書式を文字列にするしかないのでは?
 
前者は数値、後者は数字(文字の一種)となります。
 
どっちがいいかは、その後どのようにそのデータを利用するかによります。

回答
投稿日時: 19/08/02 10:48:40
投稿者: WinArrow
投稿者のウェブサイトに移動

掲示の様に指定すると、元の値が数値として認識されます。
入力規則を設定したセルの表示形式を「文字列」に設定しても
「1」と入力すると、エラーにはなりません。
 
問題は、「元の値」の指定方法にあります。
 
元の値のリスト
 
任意のセル
=TEXT(ROW(A1),"00")
お入力し、下へフィルドラッグします。
仮に、このセル範囲をD1〜D12とします、
 
入力規則の「元の値」に
=$D$1:$D$12
と入力します。

投稿日時: 19/08/02 11:38:45
投稿者: YM1026

メジロ2様
半平太様
WinArrow様
 
ご回答いただきありがとうございます。
元の値をテキストにすることで解決できました。
ありがとうございました。