ドコモユーザーなら、ドコモ光が断然おトク

こんにちは。
エクセルで表を作っています。
VLOOKUP関数を使いたいのですが、エラー#N/Aが出て使えません。とてもシンプルな式なのに、何がだめでできないのか全く解かりません。
式は、=VLOOKUP(C3&D3,A7:D12,4,FALSE)です。
ちなみに、=VLOOKUP(C2,B7:D12,3,FALSE)にはちゃんと反応して数値を返してくれます。違いは検索値だけなのですが、数字になっているので、文字列に指定もしました。違うセルで=C3&D3は返してくれています。
何がいけなくてできないのか、教えていただけると助かります。
よろしくお願いします。

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

A 回答 (3件)

次の点を確認して下さい。


・A7:A17は文字列でない。
 元々、数値だったのをセルの書式設定で文字列に変更しただけでは駄目です。
 この場合、A7:A17を選択→データ→区切り位置→次へ→次へ→列のデーや形式を文字列にチェック→完了をお試し下さい。
⇒(C3&D3)の文字列がA7:A17に存在しない。
 検索値、又は検索列に余分なスペース等が混入していないでしょうか。

この回答への補足

こんにちは。
できました。ありがとうございます。
おっしゃる通り、書式設定で文字列に変更しただけだったのですが、駄目なのですね。ちなみに区切り位置とゆうのは今回初めて使用して、どんな機能なのか解かりませんが、少し使ってみて勉強してみます。

補足日時:2008/05/01 16:19
    • good
    • 4
この回答へのお礼

まだ表の製作途中なので、続きを頑張って作ります。
ありがとうございました。

お礼日時:2008/05/01 16:26

VLOOKUPのエラーはほとんど、質問者の思い込みと違って、


第1引数の値と
第二引数の範囲の最左列の(検索列)の「質問者が同じはずと思っている!」行の値が
違っているのです。
事例は半角と全角、文字列と数値、余分な空白などが前後中間にあるとかが多いかな。
だから数式バー部に出る両者の値をよーく観察してください.
関数はセルの値で同じかどうかを判断するので、見た目ではない。
もうひとつ>VLOOKUP(C3&D3,A7:D12,4,FALSE)です。
は第2引数のセル範囲が、絶対番地範囲($つき)になってません。
もし、複数・各行にこの式を複写して使う、使い方をしていたら、質問の式は、破綻します。
三番目は第4引数のFALSE型とTRUE型の誤解でしょう。本件は関係なし。
===
下記をやってみてください。
下記のデータを入力して、用意する
A1セル '1 アポストロフィをつけると、絶対に文字列になる。(知っているかな)
検索表を作る。
D1:E10
1(数値) a
・・・
書式で表示形式を文字列に変更してみる。
どこかのセルに
=VLOOKUP(A1,$D$1:$E$10,2,FALSE)
これは#N/Aとなる.
なぜ??
どこかの空きセルに=TYPE(D1)  は 1 =>数値
隣でも
=TYPE(A1)  は 2 => 文字列
とデータタイプが違うことが判る。
これは覚えておくとエラー解析に、貴重と思う。
    • good
    • 4
この回答へのお礼

ありがとうございます。
できました。
めげずに続けて表を完成させたいと思います。

お礼日時:2008/05/01 23:04

C3&D3ですと、数字でなくて文字列になりますね。



参照するA7:D12のA列のキーは、文字列になっていますか?
ISNUMBER関数でチェックしてみては。

この回答への補足

ありがとうございます。
A列は文字列に指定してあります。
ちなみに違うセルで=C3&D3を返してくれているので、そのセルを検索値にして=VLOOKUP(返してくれているセル,A7:D12,4,FALSE)としてもエラーが帰ってきます。
もちろん検索値にある文字はA列に存在しています。
すみませんがお願いします。

補足日時:2008/05/01 16:10
    • good
    • 1
この回答へのお礼

ありがとうございました。
できました。まだまだ勉強不足です。
頑張ります。

お礼日時:2008/05/01 23:00

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

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

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

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

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

QVLOOKUPで値があるのにエラーになる

EXCEL2003でVLOOKUP関数を使用しています。

=VLOOKUP(A1,マスタ,2,0)

上記の関数をコピーしたのですが、いくつかエラーとなる箇所があり、
マスタの検索先を調べてみると、検索値と一致している項目があるのに
エラーとなっているものがあります。
IF関数で検索値とマスタの検索先を比べてみて、一致しているのは確認しました。
原因がわかる方いらっしゃいましたら教えてください。

Aベストアンサー

・検索先はマスターの左端の列ですよね
・検索先のセルをA1にコピーしてもエラーになりますか
・マスターの部分を範囲指定で置き換えたらどうなりますか

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセルで重複しているデータの抽出のしかたを教えてください。

エクセルで重複しているデータを抽出したいのですが・・。なにぶん初心者なもので簡単な方法があればよいのですが・・。
A列に日付 B列に企業名このデータが300件ほどあります。

 Å列      B列
1月 1日    AAAA社
1月 4日   BBBB社
1月 8日   CCCC社
2月 1日   BBBB社
2月20日    DDDD社
3月 2日   AAAA社

と、あるとしてB列の企業名が重複しているものを抽出したいのですが・・・。この場合 AAAA社とBBBB社ですが。
これを簡単に抽出する方法はないでしょうか?
教えてください お願いいたします。

Aベストアンサー

企業名がセルB2からセルB300まで入力されていると仮定します。
セルC2に IF(COUNTIF($B$2:B2,B2)>1,"*","") を入力し、セルC300までコピーして下さい。すると重複したデータの二番目以降に "*" のマークが付きます。
(注) 数式を下のセルまでコピーするため、COUNTIF($B$2 は絶対参照にして下さい。

QEXCELで別のシートのデータを参照して返す方法

ちょっとしたことなのですが、うまく式が書けなくて悩んでいます。

作業用のシート1と参照用のシート2があり、
シート1のA列には
 あおき
 あべ
 いぐち
 いはら
などと文字列(名前)が入力されています。
こちらは今度の野球のスタメンだと思ってください。

シート2にはA列とB列があって、
わたなべ 55
いぐち  43
あおやま 67
いはら  41
などと、名前:背番号が羅列されています。こちらが参照用の全選手の背番号リストだと思ってください。

ここで、 シート1のB列に、A列の名前に対応した背番号を返したいのです。
なので、シート1のB列に
IF(シート1のA列の値=シート2のA列のいずれかの値)だったとき、
適合したシート2の行のB列の値を表示する
という式を入れたいのですが、どのように式を書けばよいでしょうか。

すみませんがどなたか教えてください。

Aベストアンサー

私もその場合はVLOOKUP関数を使用しています。

「B1」=VLOOKUP(A1,Sheet2!$A:$B,2,0)

QEXCELのVLOOK 関数で「#N/A」がでてしまいます。

たびたびすいません。どなたかお助けください。
  A  B
1 025
2 125
3 4477
4 025
別表で
  A B
1 025 a
2 125 b
3 4477 c
と作り、一番上のB列に検索値の欄にA1、範囲を(別表の)A1:B3、列番号を2、検索型をfalseにしてだして、コピーしたら、
  A  B
1 025 #N/A
2 125 #N/A
3 4477 #N/A
4 025 #N/A
となります。ただし、A1の025をもう一度入力しなおすとaと出てくれます。なにかこの不具合を解消する策はないでしょうか?

Aベストアンサー

0が入っているので、A列は書式>セルで表示形式が「文字列」ですよね。
A列を文字列にすると、質問者さんのおっしゃる状態になりました。
A列が「標準」では、aが問題なく表示されます。

A列を「文字列」にする必要がある時は、関数の入ったセルを一度クリアして、その他の数字は入ったままワークシート全体を選択して、「文字列」にします。その後、VLOOKUP関数の入るセルだけを「標準」にしてから関数をペーストすると、問題なくできました。

セル形式が合っていなかったのではないかと思います。

QVLOOKUPで違う値をとってきます。

エクセルの表で
A列     B列
あいうえお  1
かきくけこ  2
さしすせそ  3
たちつてと  4
 ・      ・
 ・      ・
 ・      ・
YMCA 403

という表からC1のセルに
VLOOKUP(D1,A1:B403,2,1)
と打ち込み
D1のセルに
「あいうえお」
と打ち込むと、「1」が出てくると思うのですが、
なぜか「6」と出てきます。
原因が分かりません。
どなたかお教えいただけますでしょうか。

Aベストアンサー

VLOOKUP(D1,A1:B403,2,0)
としてみてください。

QEXCELの数字が認識されない

ご存知の方がいらっっしゃったら教えてください。
Excelの数字が認識されなくて困っています。

別の部署より送ってもらった商品の品番・品名・価格などの表から
VLOOKUP関数を使い、別の表へ品番から品名や価格を導きたいのですが、
なぜか送ってもらった表の数字が認識されていないようです。

何度やっても、エラーになります。
送ってもらった元の表の品番をあとから私が入力しなおすと認識されて
関数もつかえるのですが、沢山ある品番を全部入力しなおすのは大変です。
なにかいい方法はありますか?

ちなみに表示形式を数字にしてもだめです。
コピーして値だけを貼り付けとかにしてみてもだめでした。

よろしくおねがします

Aベストアンサー

空いている列を作業列にして

=TRIM(A1) や =CLEAN(A1) を使って、元の列に形式選択の値で貼りつけしてみるとか。

Qエクセルで数式の結果が反映されない(自動計算になっているのに)

すいません、教えてください。

エクセル(XP)で数式が自動計算されなくなって
しまいました。

  ※ツールのオプションはちゃんと自動計算に
   なっているのに全く反映されません。

今まで全く問題なく作業できていたので
原因が分からず困っています。

数式等のエラーだとは考えにくいです。
と言うのも数式のあるセルをダブルクリックして
選択し、そのままEnterキーを押すと計算結果が
反映されます。
ただ、今まで全て自動計算されていたのが
全く動かなくなってしまったんです。

同じようなトラブルを経験された方、又は
詳しい方、どうかよろしくお願いします。

Aベストアンサー

原因は分からずじまいになってしまいましたが
同じことがありました。

「Officeの救急隊」を試してみましょう。
ボタン一発で全ての設定が元に戻ります。
http://www.vector.co.jp/soft/win95/util/se247118.html
(ツールバーなども初期状態に戻ります)

私の場合はコレで直ってしまいました^^

参考URL:http://www.vector.co.jp/soft/win95/util/se247118.html

Qvlookup関数で検索値を含む文字列を検索する方法

vlookup関数で例えば E1のセルに=vlookup(D1,A:C,3,false)とした場合、D1が佐藤であれば、A列に「佐藤」がある場合には当然、「佐藤」がある行の3列目の値が返されますが、「佐藤」はなく「佐藤A」や「A佐藤」がある場合にもこれらがある行の値を返して欲しいのですが、いい方法はありませんでしょうか。*を使ってできると思ったのですがうまくいきません。上記例で、=vlookup("*佐藤*",A:C,3,false)とすればできますが、*佐藤*の部分はD1の引用を利用したいのです。
 よろしくお願いします。

Aベストアンサー

=VLOOKUP("*"&D1&"*",A:C,3,FALSE)

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む


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

人気Q&Aランキング

おすすめ情報