• ベストアンサー

Excelで入力規則が反映されない。

Excel2007でシートBに「123」と名前のついたリストを作り、シートAに入力規則を設定しましたが、リストにない値を入れてもエラーになりません。 シートBのリストは、  名前:123  参照範囲:シートB!$B$1:$B$171 範囲:シートA 条件設定:入力値の種類=リスト      元の値=「=123」      ドロップダウンリストから選択する=チェック済 エラーメッセージ:表示するにチェック済          スタイル=停止 他のファイルでは出来ていて、それとまったく同じにしているつもりなのですが・・・。 ドロップダウンリストは表示され、そこから選ぶことは可能ですが、まったく関係ない値も普通に入力できてしまいます。 初歩的なことでしたらお手数掛けて申し訳ありませんが、よろしくお願いします。

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

  • ベストアンサー
  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.2

こんにちは 名前の定義規則とおりであるということと公開された情報から、思いっきり想像力を働かせて思いつくことは、そのファイルでは名前の定義が混乱している可能性が考えられます。 ですので、「名前の定義」ウィンドウで、実際に登録されている定義をレビューする(あってはならない名前の重複がないことを確認する)、定義された名前を全部削除して付け直してみる(ファイルの名前付けを記録している部分が壊れている)の確認/回避手段しか思いつけません。 もしも、問題の出るファイルが使い込んだファイルであるなら、問題のでない「新規ファイル」で再構築するのが一番の早道かと思いますというアドバイスもありますが。

puchi_0118
質問者

お礼

ご回答ありがとうございます。 名前の定義を空にしてやり直してみましたが、うまくいきません。 機能しているファイルに同じ名前のリストがあったので、その名前はやめて、とりあえず「S」でできているのでそれで使用していました。 新規ファイルで作り直したらできるかもしれません。アドバイスありがとうございます。 しかし、何もいじっていないにも関わらず、また今朝機能しなくなっていました。なので別な理由かもしれませんが全くわかりません。 サーバーで共有ファイルになっているのは関係あるでしょうか? とりあえず、直すまでは自分で気をつけて入力していこうと思います^^;

その他の回答 (3)

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.4

No.2です。 >サーバーで共有ファイルになっているのは関係あるでしょうか? ということは、ご本人がいじった覚えが無くても他の人が編集する(他のファイルからセルなどをコピー等で名前を上書きする)可能性があるわけですね。 もし閲覧行為だけ共有するなら書き込み禁止に設定するのも手です(名前を付けて保存時のウィンドウにあるメニュー「ツール」-「全般オプション」で書き込みパスワードを設定、読み取り専用を推奨するをチェック)。 共有ファイルに書き込みも必要となると..業務が判らないのでコピーできないように入力規則でしばるとかぐらいしか思いつきません(^^;。

puchi_0118
質問者

お礼

書き込みは私だけですが、書込み禁止+読み取り専用推奨になっています。他の方が閲覧してそこからコピーしてデータを持って行ったりすることはあるようですが。 とりあえず、今回の件は保留にして、この先、他に何か手を打つ必要があったらまた考えたいと思います。 色々御助言いただきましてありがとうございます。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

元の質問とは違うようですが、 >「あいう」リストの名前でできているのですが、なぜこのファイルではできないのでしょうか? #2さんが触れられていますが、おそらく、ひとつかそれ以上の「名前の登録」が、そのままでは扱えない状態になってしまっているようです。例えば、「名前の登録」の名称がなくなってしまったりしたものです。 「名前の登録」というのは、シート属性のはずですが、必ずしも、そうでないものがあるのが、原因のようです。意外に、「名前の登録」は、親オブジェクト(シート、ブック・アプリケーション)という組み合わせが複雑です。 あまり具体的な確証を得ているわけではありませんが、「名前の登録」で、いくつかのトラブルがあるとのは聞いたことがあります。それで、一度、全ての「名前の登録」を削除していただければよいのですが、うまく削除できないものが残る話があります。 また、「名前の登録」に残っていても、リストに名前が出てこないものがあります。名前が表に出てこないものは、VBAで削除できますが、しかし、VBAで完全に削除できないものもあります。 そのような同質の問題だと思っています。 >ほとんど同じつくりの別ファイルでは、「あいう」リストの名前でできているのですが 問題は、ここにあるかもしれませんね。もしかしたら、複数のブックを開けた状態で、同名の片方の「名前の登録」の編集をしたからかもしれません。確信はないのですが。

puchi_0118
質問者

お礼

詳しくご回答ありがとうございます。 トラブルが確認されている部分なのですね。まだ自分にはいろいろわからないことがたくさんあり、これからも出くわす可能性は大です。。。 どうやら簡単には直りそうにないようで・・・、現在の状況は、#2さんへ返信した通りです。 とりあえず、そのファイルの名前の登録はすべて削除して、まったく別の名前でやり直したのにも関わらず、元に戻ってしまったので、ファイル自体を作り直さない限り、また別の状況にはならなさそうなので、今のファイルでそのまま入力規則無しで気をつけてやって行こうと思いますが、また、何かお分かりになることがありましたら、教えていただければと思います。

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.1

こんにちは 外していたらごめんなさい。 ヘルプの名前の定義規則に「使用できる文字」として「名前の最初の文字には、文字または下線 (_) を指定する必要があります。最初の文字以外には、文字、数値、ピリオド (.)、下線 (_) を指定できます。」とあります。 「123」以外の名前でうまくいきませんか? その他、セル参照と同じ名前を使用しない(Z$100やR1C1など)。 名前に使用できる文字数は、255 文字まで(セル範囲に 253 文字を超える名前を付けると、[名前] ボックスでそのセル範囲を選択できなくなります)。

puchi_0118
質問者

補足

早速のご回答ありがとうございます。 そして、申し訳ございません。実際のリストは「あいう」のように文字列です。私の例えが悪く申し訳ありませんでした。 しかし、そのような名前の定義規則があることも知りませんでしたので勉強になりました。ありがとうございました。 一度だけ、仮に「S」という名前を付けた時だけ一瞬うまくいったのですが、シートの名前をそのままつけたかったのでシートの名前でやり直したところできませんでした。 今それを思い出し、もう一度「S」という名前にしたところできましたが、やはりリストを「あいう」のように文字にするとできません。 ほとんど同じつくりの別ファイルでは、「あいう」リストの名前でできているのですが、なぜこのファイルではできないのでしょうか? 質問が少々変わってしまいますが、お分かりになれば教えていただければと思います。

関連するQ&A