こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

[Excel]入力規則の数式が計算されずエラー表示も出ないようになりま

[Excel]入力規則の数式が計算されずエラー表示も出ないようになりました

お世話になります。(先日もこちらではお世話になりました。ありがとうございます。)
EXCEL 2007 を使用しています。

入力規則を使用して数式を実行したいと思い
初めて[入力規則]-[ユーザー設定]-[数式]欄に数式を書いて結果を得ようと
してみたのですがエラーとなってしまいました。
数式に間違いがあるらしいエラーだったため何度か数式を見直し・やり直したのですが、エラーでした。
入力規則ではなく普通のセルにこの数式を入れると問題なくほしい値が帰ってくるので、
なぜ入力規則では、エラーが出るのか分かりません。

また、何度も入力規則をやり直しているうちに
エラー表示ウィンドウが出なくなりました。出ないだけなら成功したと思うのですが、
エラーウィンドウが出ないだけで、数式は実行されません。
入力規則の全ての値をクリアにしてから再度 設定、式を入力しても
エラー表示ウィンドウも値も出てきません。
試しにA1セルに簡単な数式を入力規則で行ってみました。
=1+2+3
とか
=SUM(B1:D1)
(↑値は6になる)
これでもエラーも数式の結果となる値もでません。
ちなみに入力規則のリスト表示など他の機能は問題なく値が帰ってきます。

何か間違っているのでしょうか?

ちなみに入力規則に記入したかった数式は↓になります
  =IF(INDIRECT("F"&ROW())>0,ROW()-2," ")
数式の説明:
・もしF列のこのセルと同じ行に何か値が入っていれば【行-2】になる値を表示
  A3セル 入力規則を適用
  F3セル 何か値が入っている
  A3セル A3といのは3行目のことだから 3-2=1 となり、計算結果の 1 が表示される
・もしF列のこのセルと同じ行に何も値が入っていなければ空欄のままにする
というものです。

お分かりになる方いらっしゃいましたらご教授下さい。
よろしくお願い致します。

投稿日時 - 2010-08-20 09:14:46

QNo.6122182

困ってます

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

質問表現が長すぎて、回答と関係ないグチみたいなことが多すぎる。
式をもっとはじめの段階で出すこと。また何をしたいのかも。
回答者も忙しい。普通は初心者なら、質問に思考過程など長々書く必要はない。
ーー
(1)入力規則と普通の関数を誤解している。
  >もしF列のこのセルと同じ行に何か値が入っていれば【行-2】になる値を表示
 ・1が表示される
 ・ 空欄のまま
は式を入れたセルの値を決める式(関数とはもともとそういうもの)です。
ーー
入力規則は、そのセルに入力された値をチェックするもの。
入力規則を使わないで、入力はそのままで、他のセルに関数で適否は指摘できるが、入力規則は
直ちに指摘し、(基本方式は)不都合な値は入力させない。
質問者の考えが、根本的におかしいと思う。
条件付き書式や、入力規則でも数式を入れる使い方が出来るが、あえて言えばシートの関数と違うものと考えるべき。考え方では、もし・・ならばなのだが、IFを要れないとか。
ーー
(2)「このセル」はどんな範囲か(チェックを書けるセル範囲)
(3)そのセルの「値」についてどんなチェックを掛けたいか。
一番代表的なのはそのセルの値が、定数より大きいOR小さいなどだが
本質問例では??
(4)関数でも、同じパターンの式でも、セル範囲の中で考えると行は変化する。しかしほとんどF3と言う風に書いて、式の変化で
第5行の場合はF5に変化させている(エクセルの式の複写の式変化の便利な機能を使わせてもらう)
だから"F"&ROW())>のような発想はしない。1つのセルに入れる式を念頭に置いて考えればすむ。
この根本のことの理解が十分でなく、普通はしないところの、手数のかかるほうに行ってしまっている。
また式を入れるセルとなんけい関係のないセルのみの条件を与えることは出来ない(効果がない)ようだ。
A1で=F1>""を入力規則で入れても効き目がない。(今までやったことが無かったので不思議で思案中)
A1はF1より大の数値であるべきは、範囲を指定し、A1(アクチブセルで代表させる式を書いて)
=?1>F1で良い。

投稿日時 - 2010-08-20 10:19:11

お礼

回答ありがとうございます。

根本的に誤解があったようでお手数をおかけしました。
シートの関数と違うものと考えるべきだったんですね。
細かく考えて頂いてありがとうございます。
時間がかかりましたが、なんとかおっしゃっている事が理解できました。
>質問表現が長すぎて...
以前逆に【その計算式に至った経過を書くよう】(別のサイト)お叱りを受けた事があるのですが、
逆に長文すぎて不快な思いをさせてしまったようで、申しわけありません。

投稿日時 - 2010-08-20 11:19:14

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.5

#3です。最後の=?1>F3は、=A1>F1のミスタイプです。お詫びして訂正します。

投稿日時 - 2010-08-20 10:22:38

お礼

訂正ありがとうございます。

投稿日時 - 2010-08-20 11:27:37

ANo.4

入力規則を少し勘違いされているようですね。

入力規則で数式を使う場合は、答えがTrueかFalseで返される形の式を入力し、Falseになる場合に入力不可にしたりエラーメッセージを表示したりする処理を行うものです。

例 偶数のみを入力したい

A1に入力規則→ユーザー設定→数式→「=MOD(A1,2)=2」と入力→奇数を入力するとエラー

今回は普通に数式で対応できると思うんですが、入力規則を使う必要性はどこにあるんでしょうか?
あえて、入力規則にした理由があれば、また別のアプローチの回答もつくかもしれません。

投稿日時 - 2010-08-20 10:22:15

お礼

回答ありがとうございます。
根本的な理解が間違っていたようでお手数をおかけしました。
>あえて、入力規則にした理由があれば
出来れば入力規則でしたかったので、
もう一度自身で練り直してから 行き詰ったら再度新しい質問のスレを立てさせて頂きます。
ありがとうございました。

投稿日時 - 2010-08-20 11:25:23

ANo.2

入力規則を使うのはセルに入力するデータに制限を設けるなどのことをする場合です。例えばA列を選んで「データの入力規則」から入力値の種類に「ユーザー設定」を選んで数式の窓に =A1>=10 のように入力することでA列には10以上の数値は入力できますが10未満の数値はできなくなります。
式を使ってその結果を表示させるのでしたら表示させたいセルにその数式を直接入力することです。
お示しの式はA3セルに入力規則を設定して入力するのではなく、A3セルに直接その式を入力することでよいでしょう。

投稿日時 - 2010-08-20 10:11:19

お礼

回答ありがとうございます。
根本的な部分が間違っていたのですね。
=A1>=10 等で試した結果うまくいきました
ありがとうございます。

投稿日時 - 2010-08-20 10:27:42

ANo.1

何か勘違いされていませんでしょうか。
入力規則とは、一定の入力条件での入力を許可するか否かを設定する事で、ご質問者のが期待しているような事と相違しています。
「入力規則」でサイト検索して使用例を参考にして下さい。

因みにご質問者のの期待している事に入力規則を適用する必要はありませんので入力規則を外して下さい。

投稿日時 - 2010-08-20 10:11:04

お礼

回答ありがとうございます。
ネット検索で入力規則には数式も書けるとあるのを見て試していたのですが
根本的な使い方の部分が間違っていたのですね
納得できました。ありがとうございます。

投稿日時 - 2010-08-20 10:23:29

あなたにオススメの質問