エクセルに詳しい方、教えて下さい。
エクセルで部品の在庫管理をしているのですが、月に1度、外注さんからエクセルのデータで在庫表が送られてくるのですが、データ量が多い為、VLOOKUP関数を使って同じ部品があるかどうか(部品コードで検索しています。)検索をかけているのですが、外注さんのエクセルのセルの書式設定が違うのか、同じ部品コードがあっても「#N/A」になってしまうのですが、なぜでしょうか?
また、セルの書式設定を「標準」にしても、「#N/A」←エラーになってしまって、どちらかの表に部品コードを入力し直すと反映されるのですが、データ量が多いので1個1個入力し直すと時間がかかってしまうので困っています。どなたかわかる方がいましたら宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

こんばんは!


間違っていたらごめんなさい・・・

もしかして外注さんのデータに全角文字が含まれているのではないでしょうか?
もしそうであれば、一例ですが、

仮にA列に部品コードが入っていると仮定します。
A列に作業列を挿入して(元のA列がB列になり、空白のA列が挿入されると思います。)
A1セルに
=ASC(B1) として、オートフィルマーク(+)のところでダブルクリック
多分これでOKだと思いますが、
もしそれでもエラーが出るのであれば、
A列すべてをコピー → 編集 → 形式を選択して貼り付け → 「値」を選択

そしてB列にもう一度貼りなおします。
その後、A列を削除!

これで改善されないでしょうか?

あくまで、送られてきたデータが全角文字が含まれているという前提での回答でしたので
的外れの回答なら読み流してください。m(__)m
    • good
    • 0
この回答へのお礼

ご意見ありがとうございます。
表を確認してみたのですが、全角は含まれておらず、tom04さんの言うように=ASCやA列をコピーしてB列に貼り付けのやり方もやってみたのですが、エラーでした・・・。
数式もちゃんと合ってます。何が原因なのかわかりませんが、とても参考になりました。ありがとうございました。

お礼日時:2009/05/17 16:23

検索範囲が狭いのではありませんか?


VLOOKUP(検索値,範囲,列番号,検索の型)で範囲の式が検索範囲に一致しているか確認してください。

ちなみにOffsetを利用すると楽です。
A列にコード/B列に品名?が2行目からあるとすると

OFFSET(A1,0,0,COUNTA(A:A),2)

を範囲の位置に入力すれば検索範囲がいくら大きくなっても大丈夫です。
    • good
    • 0
この回答へのお礼

ご意見ありがとうございます。
「OFFSET」初めて聞きました!!
明日、会社に行ったら試してみようと思います。
参考になりありがとうございました。

お礼日時:2009/05/17 16:30

次の方法をお試しください。


検索列を選択→データ→区切り位置→完了

この回答への補足

ご意見ありがとうございます。
区切り位置、やってみたのですが、エラーでした。。。
何が原因なのかわかりませんが、「謎」です。。。。
参考になりありがとうございました。

補足日時:2009/05/17 16:26
    • good
    • 1

こんにちわ。


原因かどうかわかりませんが、VLOOKUPは検索範囲である部品コードを昇順に並べておかないと不具合が出る場合があります。

可能性のひとつでした~
    • good
    • 0
この回答へのお礼

ご意見ありがとうございます。
確認しましたところ、部品コードの順番も昇順にしてありますし、オートフィルタもはずしてありますし、数式もあっているので、何が原因なのかわかりません。。。。「謎」です。。。。
ありがとうございました。

お礼日時:2009/05/17 16:26

この現象、昔々ですが私も経験あります。

部品コードのセルをF2キーでアクティブにして再確定したらうまくいくやつですよね。
VLOOKUP関数の最後のFALSEかTRUEを省略していませんか?
省略しないほうがいいです。
ご参考まで
    • good
    • 0
この回答へのお礼

ご意見ありがとうございます。
数式を確認してみたのですが、ちゃんと合ってました。だけど、やっぱりエラーになってしまい、試しに部品コードのセルにF2キーを押してみたら、反映されました。だけど、1個1個やってみたので、少々時間はかかりましたが、、、、。何が原因なのかまだ不明ですが、とりあえず反映されたのでよかったです。
ありがとうございました。

お礼日時:2009/05/17 16:18

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Q■□■読み方■□■ #N/A, #VALUE!, #REF!,DIV/0!,#NUM!, NAME?, #NULL

前に、似たような質問をされている方がおりましたが、明確な答えが出ておりませんでしたので教えていただけますでしょうか。
以下のようなエクセルのエラー項目の
読み方を教えていただけませんでしょうか。
#N/A
#VALUE!
#REF!
DIV/0!
#NUM!
NAME?
#NULL
よろしくお願いします。
なお、意味は結構です。あくまで読み方を教えていただきたいのです。
しかも、カタカナでお答えいただくと助かります。
勝手言って申し訳ないですが、
よろしくお願いします。

Aベストアンサー

<方法1>略語の由来となっている英語を言う。
※冠詞は省いています。英語の表現は他にもあります。

#N/A Not Available Value ナット・アヴェイラブル・ヴァリュー
#VALUE! Wrong Type of Value ローング・タイプ・オヴ・ヴァリュー
#REF! Invalid Cell Reference インヴァリッド・セル・リファレンス
#DIV/0! Divided by Zero ディヴァイディッド・バイ・ゼロ
#NUM! Invalid Number インヴァリッド・ナンバー
#NAME? Unrecognized Name アンリコグナイズド・ネイム
#NULL! Null Intersection ナル・インターセクション

<方法2>書いてある字をそのまま読む。

#N/A エヌエー
#VALUE! バリュー
#REF! レフ
#DIV/0! ディブゼロ
#NUM! ナム
#NAME? ネーム
#NULL! ナル(ヌル)

<方法3>適当な英語で代表させて「エラー」をつける。

#N/A ノットアベイラブルエラー
#VALUE! バリューエラー
#REF! リファレンスエラー
#DIV/0! ディバイデッドバイゼロエラー
#NUM! ナンバーエラー
#NAME? ネームエラー
#NULL! ヌルエラー

<方法4>日本語を混ぜる。

#N/A 無効エラー
#VALUE! バリューエラー
#REF! 参照エラー
#DIV/0! ゼロ割りエラー
#NUM! ナンバーエラー
#NAME? 名前エラー
#NULL! ヌルエラー

<方法1>略語の由来となっている英語を言う。
※冠詞は省いています。英語の表現は他にもあります。

#N/A Not Available Value ナット・アヴェイラブル・ヴァリュー
#VALUE! Wrong Type of Value ローング・タイプ・オヴ・ヴァリュー
#REF! Invalid Cell Reference インヴァリッド・セル・リファレンス
#DIV/0! Divided by Zero ディヴァイディッド・バイ・ゼロ
#NUM! Invalid Number インヴァリッド・ナンバー
#NAME? Unrecognized Name アンリコグナイズド・ネイム
#NULL! Null Intersection ナル...続きを読む

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Q#,##0.00;-#,##0.00;#,##0.00;@というセルの書式設定について

エクセルで、労働時間の表があります。
A列に氏名、B列に日付、C列に労働時間数が入っています。
そのC列のデータは、9.91とか5.85とかが入っているのですが、
セルの書式設定の表示形式のユーザー定義を見ると、
下記のように書かれています。

#,##0.00;-#,##0.00;#,##0.00;@

作った人はすでにおらず、わかる人もいません。
これは、どういう意味でしょうか。
そして、何故、標準や数値じゃなく、
わざわざこんなふうに設定したのか知りたいのです。
すみませんが、宜しく御願い致します。

Aベストアンサー

正の数の書式;負の数の書式;ゼロの書式;文字列の書式

http://support.microsoft.com/kb/883199/ja

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Q【Excel】 #N/Aの場合の「条件付き書式」

こんにちは。

A1セルにVLOOKUP関数が入っています。
A1の結果が#N/Aになるときに、セル色を赤にしたいとき、
条件付書式で設定できるでしょうか。

Excel2003です。
よろしくお願いいたします。

Aベストアンサー

=ERROR.TYPE(A1)=7
で、#N/A の判定です。

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Q条件付書式で「=#N/A」に色を付けたい

オフィス2007です。
該当のセルには、VLOOKUP関数が入っているのですが
「=#N/A」になる個所を作ってあります。

その「=#N/A」に対して条件付書式で色を付けたいのですがどうすればいいでしょうか?

条件付書式→新しいルール→
上から2行目の「指定の値を含むセルだけを書式設定」で
「セルの値」「次の値に等しい」「=#N/A」としましたが何も起りません。

Aベストアンサー

回答No1です。
VLOOKUP関数などではしばしばエラー表示がされますね。それは検索するデータが参照先で検出されない場合ですね。
そのようなエラー表示は次のような場合ですね。
例えばシート1のA1セルから下方に氏名などがあり、その方の住所をB列に表示させる場合に、その方の氏名と住所のデータがシート2のA列とB列に入力された表が有るとしたら、シート1のB1セルには次の式を入力した場合にしばしばエラーが表示されます。
=VLOOKUP(A1,Sheet2!A:B,2,FALSE)
シート1のA列に入力した氏名がシート2のA列に無い場合にはエラーが表示されてしまいます。
そこでエラーを表示させないためには次のような式をシート1のB1セルに入力して下方にドラッグコピーします。
=IF(COUNTIF(Sheet2!A:A,A1)=0,"",VLOOKUP(A1,Sheet2!A:B,2,FALSE))
上の式ではシート2のA列に氏名が無い場合には空白のセルになります。
もしも、氏名が無い場合にはその旨をセルに表示したければ次のような式をB1セルに入力して下方にドラッグコピーしてもよいでしょう。
=IF(COUNTIF(Sheet2!A:A,A1)=0,"該当データなし",VLOOKUP(A1,Sheet2!A:B,2,FALSE))
以上参考までに

回答No1です。
VLOOKUP関数などではしばしばエラー表示がされますね。それは検索するデータが参照先で検出されない場合ですね。
そのようなエラー表示は次のような場合ですね。
例えばシート1のA1セルから下方に氏名などがあり、その方の住所をB列に表示させる場合に、その方の氏名と住所のデータがシート2のA列とB列に入力された表が有るとしたら、シート1のB1セルには次の式を入力した場合にしばしばエラーが表示されます。
=VLOOKUP(A1,Sheet2!A:B,2,FALSE)
シート1のA列に入力した氏名がシート2のA列...続きを読む

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Q《エクセル2000》VLOOKUPのエラー#N/Aを、条件付き書式で表示させない方法

こんにちは。
IFとVLOOKUPを組み合わせて、エラーだった場合表させない方法はわかりますが、条件付き書式でエラーを表示させない方法はあるでしょうか。

ただしファイルの仕様の都合上、どこかにわざとエラー値のセルをつくって「そこと同じだったら」という条件にするのは、なしでお願いします。

Aベストアンサー

「数式が」「=ISNA(セル座標)」
でできます。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング