• ベストアンサー

EXCEL2007  関数

N10に「=VLOOKUP(C10,'[New Stock.xls]Sheet1 '!$D:$G,4,0)」の式があり在庫数が表示されています。 D10に「=IF(N10>=100,"",IF(N10>=11,"僅少",IF(N10>=0,"品切","品切")))」の式があり、N10の在庫数によって「品切」「僅少」の表示が出ます。 が、急にその表示が出なくなりました。何も変更事項はございません。 どんな原因が考えられますか?

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.4

まぁ大概の場合,上手く行ったり行かなかったりするときは数式じゃなく「計算の元にしたデータ」のほうに,間違いやミスが紛れているのが原因です。 んで。 C10にある商品を入れて? N10にゼロと表示されて D10に品切になるべき所が何も表示されていない,で間違いないのですね。 念のためD10の式を =IF(N10>=100," 沢山ある ",IF(N10>=11,"僅少",IF(N10>=0,"品切","品切"))) に修正して,N10がゼロなのに「沢山ある」と表示されるか,見てみましょう。 N10の式が取ってきた,NewStockのG列に入っていた(該当商品の行の)ゼロが,どうやらゼロに見えてゼロじゃない所まで判りました。 つまり >(G列には)数式が入っています。NewStockのsheet2から数字を引っ張ってます。 1.あるいはG列の式が間違っているのかもしれません。式を見直しましょう。   良いか悪いか判らなければ,どんな式を入れているのか教えてください。 2.G列の式が取ってきた「Sheet2の数字」が悪いのかもしれません。シート2の数字も調べ直しましょう。 3.そのシート2の数字も,実際の中身は数式ですか?数字ですか?   数字なら,その数字を入れ直すか,回答3でお話しした「生数字を入れていた場合の対処」をしてください。   数式ならどんな数式ですか? その式は今度はどこのセルを見ているのですか?   その式が見ているセル,とどんどん上流に遡って,まちがったデータや式を正していけば治ります。

iiwa
質問者

お礼

>IF(N10>=100," 沢山ある ",IF(N10>=11,"僅少",IF(N10>=0,"品切","品切")))に修正して,N10がゼロなのに「沢山ある」と表示されるか,見てみましょう。 ゼロなのに「沢山ある」と表示されました。 そして「上手く行ったり行かなかったりするときは数式じゃなく「計算の元にしたデータ」のほうに,間違いやミスが紛れているのが原因です。」 との言葉に、、、NewStockのsheet2を確認したところ、いつもは数列になっているところが、文字列になっていました。朝、データを貼り付ける時に何か間違ったようです。。 おかげで解決しました。 朝から半日がかりでした。 ご指導くださった皆様、ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

>「=VLOOKUP(C10,'[New Stock.xls]Sheet1 '!$D:$G,4,0)」の式があり在庫数が表示されています。 この式で見ているG列には,具体的に何が入っているのでしょうか。 数式ですか?生データですか?そこの値がおかしいと,ご相談のような計算不良になる場合が考えられます。 ・G列に生数字を入れていた場合の対処 New Stock.xlsのSheet1を開く G列を選んで右クリックして書式設定の表示形式で標準を選んでOKする G列を選んでデータタブの「区切り位置」を開始し,即座に完了する ・他のケース 今回計算が出なくなった品目(?C10に入れてD列を見ているデータの事です)に該当する在庫数(G列のデータのことです)のセルの実際の値として,何か変なデータが紛れているような顛末のご相談も多いです。一度数字等を消して数字を入れ直してみると,良くなります あとはご相談全般として,どんな症状でできないのかイマイチ不明です。 ご質問の式は 1.C10に数値を入れる 2.N10に数字が出る 3.D10に品切れや僅少が出る という動作をしますが,問題のD10が出ていない状態で,N10には何が表示されているのですか?

iiwa
質問者

補足

>この式で見ているG列には,具体的に何が入っているのでしょうか。 数式ですか?生データですか? 数式が入っています。NewStockのsheet2から数字を引っ張ってます。 >3.D10に品切れや僅少が出る という動作をしますが,問題のD10が出ていない状態で,N10には何が表示されているのですか? 在庫切れなのでN10には「0」と表示されています。なので、D10には「品切」と出るべきなのです。 今、試したところでは、N10はNewStockのsheet1から「0」を引っ張ってきてますが、式をはずしてN10に「0」と手入力するとD10に「品切」と出ました。。。

全文を見る
すると、全ての回答が全文表示されます。
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

もしかして自動計算がOFFになっていませんか?

iiwa
質問者

補足

自動計算はONです。 昨日までは異常がなかったので、何がなんだか分りません。。。

全文を見る
すると、全ての回答が全文表示されます。
  • minosennin
  • ベストアンサー率71% (1366/1910)
回答No.1

N10の値が「100」以上になっているためではないでしょうか。

iiwa
質問者

補足

在庫が100以上の時は空白になるようにしています。 それ以外の時は、僅少または品切が状況によって表示されます。 今回は、僅少または品切の表示が出るべきなのに空白になるので、困っています。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • IF関数の論理式が作れない

    ・在庫(シート)   A    B     C 1 品物 在庫数 2 りんご  4 3 みかん  4 4 ぶどう  4 ・出荷(シート)   A     B      C   D 1 品物 在庫数  出荷数 残 2 りんご =在庫!B2    2    =B2-C2 在庫シートのC2にも、「残」数を載せたいのですが、式の作り方が分かりません。 VLOOKUPを使ってみようと思いましたが、なかなか思うようにいきません。 出荷シートのA列の商品が、在庫シートのA列にもあった場合(この場合は「りんご」)は、出荷シートのD列の数値を返す。 無かった場合(この場合は「みかん」「ぶどう」)は、在庫シートのB列の数値を返す。 IFの真偽は作れましたが、最初の論理式作りで手間取っています。 =IF(      ,VLOOKUP(A2,出荷!A:D,1,0),B2)    ↑この部分の論理式が不明です。 尚、在庫シートのB2には既に在庫数が載ってるのに、更に在庫数を載せるのか?と疑問を感じられると思いますが、その疑問は、申し訳有りませんが、指摘しないで下さい。

  • Excel関数

    Excelで適切な関数を探しています。 在庫の管理で複数ある在庫の指定した商品の過不足がわかるような在庫表を作成しようとしてます。 会社の基幹システムからExcelに落とした在庫表が下記のようにあります。 A列    B列     C列     品番    倉庫名  保有在庫数 111111   東京     10 111111   大阪     20 222222   東京     50 333333   大阪     10 333333   札幌     10 444444   札幌     30 続く・・・ 他に各倉庫各品番の必要在庫の別シートのマスターがあります。 A列    B列   C列 品番   在庫名  必要在庫数 1111111  東京    50 1111111  大阪    10 2222222  東京    100 2222222  大阪    20 最初の在庫表にD列を設け、そこに上記のマスターの必要在庫数を表示させて下記のようにしたいのですが・・・ A列    B列     C列    D列    E 品番    倉庫名  保有在庫数  必要在庫数 過不足数 111111   東京     10      50    -40 111111   大阪     20      10    10 222222   東京     50      100   -50 ・・・・・ がIFやVLOOKUPの関数で組み合わせで適切なものができませんでした。 他の関数で適切なものはありますでしょうか。 

  • [EXCEL]VLOOKUP関数がうまくいかないので助けてください

    あ.xls   B  C  1 10   2 12 3 15 い.xls   B  D 1 10 100 2 15 150 3 18 180 あ.xlsファイルのC列に、 あ.xlsファイルのB1セルと、い.xlsファイルのB1を見比べて同じ値なら、 い.xlsファイルのD1の値をあ.xlsファイルC1に値を表示する数式を 入力しようと思います。 「=VLOOKUP(B1,[い.xls]Sheet1!$1:$3,4,false)」と あ.xlsファイルのC1セルに数式を入力しましたが、すべてエラー(#N/A)で 返ってしまいます。 正常に機能するよう、数式を教えてください。

  • Excel2007 IF関数での日付データ認識

    下記式で、2004/3/31以前を真とし、Vlookupを区別させたい。 【作成した式】=IF($D4<=3/31/2004,VLOOKUP($C4,Sheet3!$E$2:$G$26,2,FALSE),VLOOKUP($C4,Sheet3!$E$27:$G$51,2,FALSE)) 論理部分の日付の認識が ">=" と ">=" が逆になり ">=" のみあるいは ">=" の結果しかでずにおります。 関数で日付を認識させるには特別なルールが必要でしょうか。 D4(D列)は日付データ(例:2001/10/5)を入れてある。 Vlookup計算は機能している。 アドバイスをどうぞ宜しくお願いいたします。

  • Excel関数を教えてください。

    Excel関数を教えてください。 =IF(AA6="123市",VLOOKUP(AA6,参照シート!$Z$2:$AA$8,2,FALSE),VLOOKUP(AA6,参照シート!$T$2:$U$36,2,FALSE)) ↑このような関数を立てました。 市町村番号(自社のもの)を検索したいと思っています。 『もし、123市なら参照シートの表(2)Z2-AA8の番号を、それ以外の市町村なら参照シートの表(1)T2-U36の番号を返せ』と。 “それ以外の市町村”の表示はうまくいきました。 問題は、123市は大きな市で、その中でまた001~006まで支部として分かれています。 住所の「123市◎◎4-5-6」とあるように、◎◎で支部分けされています。 住所はAB6に入力されています。 これを支部番号まで表示できるような関数が作れませんか?

  • Excel関数について

    Excel関数を教えてください。 =IF(AA6="123市",VLOOKUP(AA6,参照シート!$Z$2:$AA$8,2,FALSE),VLOOKUP(AA6,参照シート!$T$2:$U$36,2,FALSE)) ↑このような関数を立てました。 市町村番号(自社のもの)を検索したいと思っています。 『もし、123市なら参照シートの表(2)Z2-AA8の番号を、それ以外の市町村なら参照シートの表(1)T2-U36の番号を返せ』と。 “それ以外の市町村”の表示はうまくいきました。 問題は、123市は大きな市で、その中でまた001~006まで支部として分かれています。 住所の「123市◎◎4-5-6」とあるように、◎◎で支部分けされています。 住所はAB6に入力されています。 これを支部番号まで表示できるような関数が作れませんか?

  • なぜか関数の参照が狂う

    エクセルのVLOOKUP関数を使って、シートの列に入れてるのですが 「=IF(U1560="要",VLOOKUP(シート1!BB1560, シート2!$B$2:$D$12,3),"")」 と入れてオートフィルしてるのに、いつのまにか 「=IF(U1570="要",VLOOKUP(シート1!BB1565, シート2!$B$2:$D$12,3),"")」 とかになってる行があります。 1570行目なら、シート1!BB1570になるべきなのに、なぜか狂います。 オートフィルタなどをすると狂っちゃいますか? マクロを組んだファイルなのですがそれが原因なのでしょうか? 行と同じ値を参照してるのに狂う原因はなんでしょうか?

  • どなたか教えてください。

    どなたか教えてください。 エクセルマクロで、Range("B93").Value = "=IF(D92="","",VLOOKUP(D92,[製品DATA.xls]製品データ!1:65536,2,0))" と、このように式を挿入しようとしたのです。 そうしたら、=IF(D92=",",VLOOKUP(D92,[製品DATA.xls]製品データ!1:65536,2,0)) となってしまいました。 ””スペースを確認したく入れたのですが、どうしたらよいでしょうか?

  • エクセルの関数とグラフについて

    VLOOKUPを使って入力したIDNoに対して、別々のシートから検索するため次のような関数をいれています。=IF(ISERROR(VLOOKUP($E1,'シート名(1)’!$B$5:$IV$254,COLUMN(G6),0)),"",VLOOKUP($E1,'シート名(1)'!$B$5:$IV$254,COLUMN(G6),0))&IF(ISERROR(VLOOKUP($E1,'シート名(2)'!$B$5:$IV$254,COLUMN(G6),0)),"",VLOOKUP($E1,'シート名(2)'!$B$5:$IV$254,COLUMN(G6),0)) この関数から得られた数値を折れ線グラフに反映させたいのですが、グラフに数値として認識されません。セルの書式設定は数値にしています。 ネットで色々調べてみて、この関数の最後に)/1を追加させた式を入力すると数値は認識されるようになりました。しかし空白の場合に#VALUEになり”プロットしない”に設定しても0にグラフが出てしまいます。 また同じ表で日付に対しても日付で表示されなかったので=IF(ISERROR(VLOOKUP(E$1,'シート名(1)'!$B$5:$IV$254,COLUMN(AC6),0)),"",TEXT(VLOOKUP(E$1,'シート名(1)'!$B$5:$IV$254,COLUMN(AC6),0),"ge.m.d"))&IF(ISERROR(VLOOKUP(E$1,'シート名(2)'!$B$5:$IV$254,COLUMN(AC6),0)),"",TEXT(VLOOKUP(E$1,'シート名(2)'!$B$5:$IV$254,COLUMN(AC6),0),"ge.m.d"))の関数を入力したところ日付が表示されるようになったのですが、空白の場合は”M33.1.0”となりグラフ上でも表示されてしまいます。 どうすれば日付や数値としてグラフ上に反映させられるのか教えてください。また空欄の場合には0にポイントされないM33.1.0にならない方法も教えてください。 エクセルは2003です。 エクセル初心者のため説明不足等あるとは思いますがよろしくお願いします。

  • 関数の中のシート名【複数】を置換を使って置換るには

    タイトルの件、質問します。 下記1の関数があります。 この中にあるシート名を下記2のとおり、置換を使って 書き換えたいと考えています。 実践しましたが、うまくできませんでした。 方法は、手入力以外であれば、置換機能ではなくてもOKです。 ご存知の方、いらっしゃいましたら、宜しくお願いします。 【下記2】 Sheet1 を 1000 に書き変えたい Sheet2 を 2000 に書き変えたい Sheet3 を 3000 に書き変えたい ※1000、2000、3000とは、シートの名前です。 【下記1】 =IF(ISERROR(VLOOKUP(SUBSTITUTE(B$1,"-",""),[名簿ブックa.xls]Sheet1!A:C,2,FALSE)),"",VLOOKUP(SUBSTITUTE(B$1,"-",""),[名簿ブックa.xls]Sheet1!A:C,2,FALSE)) &IF(ISERROR(VLOOKUP(SUBSTITUTE(B$1,"-",""),[名簿ブックa.xls]Sheet2!A:C,2,FALSE)),"",VLOOKUP(SUBSTITUTE(B$1,"-",""),[名簿ブックa.xls]Sheet2!A:C,2,FALSE)) &IF(ISERROR(VLOOKUP(SUBSTITUTE(B$1,"-",""),[名簿ブックa.xls]Sheet3!A:C,2,FALSE)),"",VLOOKUP(SUBSTITUTE(B$1,"-",""),[名簿ブックa.xls]Sheet3!A:C,2,FALSE)) ※本関数は、教えてgoo回答者様に、ご教授いただきました。

TS6130でwi-fi経由で印刷できない
このQ&Aのポイント
  • TS6130でwi-fi経由で印刷できない現象が発生しています。解決方法を教えてください。
  • wi-fi経由での印刷がTS6130でできません。どうすれば印刷できるようになるでしょうか?
  • TS6130のwi-fi印刷に問題が発生しています。解決策を教えてください。
回答を見る

専門家に質問してみよう