アプリ版:「スタンプのみでお礼する」機能のリリースについて

INDEX(価格表の参照範囲,MATCH(検索値,会社名の列),MATCH(検索値,商品名に行))
で商品価格を読みに行く関数をセルに入れました。
ほぼ問題なく価格を拾ってくるのですが、一部会社名がアルファベットの会社だけ参照されず#N/Aエラーが出てしまいます。
参照先の会社名をそのままコピーしてもやはりエラーが出てしまうのでアルファベットか否かが問題なのかなと思うのですが、何でできないのでしょうか?
会社名を変える以外で何か設定の部分で参照するようにできるでしょうか?

質問者からの補足コメント

  • 見づらくてすみません…
    INDEX('E:\H31.3請求\[商品単価表(最新).xlsx]金物類'!$D$3:$FB$623,MATCH(M5,'E:\H31.3請求\[商品単価表(最新).xlsx]金物類'!$C$3:$C$623,0),MATCH($B$2,'E:\H31.3請求\[商品単価表(最新).xlsx]金物類'!$D$2:$FB$2,0))
    が元の式です。
    「データの文字列が昇順」…確かそんなことが書いてあったように思ったのですが、検索値のデータ数がとても多く、カナも振っていないのでスルーしてしまっていました…
    第3パラメータというのを入れれば昇順にしなくても正しい戻り値が得られるのですか?
    第3パラメータとは何を指すのでしょうか?
    その場合、式のどこかの部分に「0」を入れるとよいのでしょうか?

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

      補足日時:2019/02/02 20:02
  • VLOOKUPではなかったです… 
    MATCH関数の検索値をVLOOKUPで持ってきているだけなので直接は関係ありませんでした。  
    すみません。

      補足日時:2019/02/02 20:06
  • 元となるブックとシートの一部です。これでわかりますか?
    本当に見づらくて申し訳ありません。
    全く同じ関数のシートが複数あり、他の会社のところはちゃんと値が返ってきます。
    ですので、自分ではアルファベットが問題なのかな…と思っていたのですが問題は他にあるのですね…

    「VLOOKUPの一部が参照しません、どの」の補足画像3
      補足日時:2019/02/02 20:36
  • そうかもしれません。試しにKYOUEIをキョーエイにしたら値は返ってくるのですがカナ表記にして見積や納品、請求書作るたびにアルファベット表記にするのもかなり手間だと思い(件数多いので)、設定かどこかで何とかならないかと。

    No.5の回答に寄せられた補足コメントです。 補足日時:2019/02/02 21:06

A 回答 (7件)

全角半角は合ってますか?


後、余分なスペースなど入ってませんか?
    • good
    • 0
この回答へのお礼

数式バーのところからコピペしたので合っています。全角も半角もやはりエラーが返されます。
不本意ですが、カナで入力し正式名称をそのあと( )で入力しようかと…
それにしてもどうしてアルファベットだとエラー値になるのか。
何度も丁寧に教えていただきありがとうございました。

お礼日時:2019/02/03 15:32

近似値、完全一致は一見そうも見えますが、実は検索方法が全く異なるのです。

バイナリサーチといいますが、まずは中央の値と比べて大きければ上半分の中点と、小さけれ、下半分の中点と比較する、これを繰り返すと理論上n回の比較で2のn乗のデータから見つけることが可能で件数が多い場合圧倒的な速度が期待できるのです。
ただし並び替えが先に行われていることが要件となっています。
この説明が、あまりされていないので近似値と誤解されますが近似値を、得る為にも並べ替えは必須要件なのです。
    • good
    • 0
この回答へのお礼

近似値は使ったことがなかのですが、そのように値を出すのですね。これから近似値を得る際は並べ替えを心がけようと思います。
ありがとうございました。

お礼日時:2019/02/03 10:00

>他の会社のところはちゃんと値が返ってきます。



じゃあ、会社名が原因ということはないのですか?
この回答への補足あり
    • good
    • 0

【再掲】うまく参照できないデータをそのまま貼り付けてもらえますか?

    • good
    • 0

どこにvlookup関数が登場するのですか。



match関数で第三引数を表略したければ、会社名も商品名もそれぞれ昇順で並べ替えられている必要があります。並べ替えていない場合、正しい値が出ても偶然です。
    • good
    • 0
この回答へのお礼

vlookupは検索値の一部で直接は関係ありませんでした。質問のタイトルを間違ってしまい申し訳ありません。

お礼日時:2019/02/02 20:40

説明だけされてもわからないので、実際に入れている式とうまく参照できないデータをそのまま貼り付けてもらえますか?



行も列も指定してるし、MATCH関数が怪しいとは思いますが。

それと、結局VLOOKUP関数は関係ないということでよろしいですか?
    • good
    • 0

Match関数は第3パラメータを省略したとき


データの文字が昇順である事を要求されます。
そうでない並びの場合明示的に0を指定しないと
見つけることが出来ません。
    • good
    • 0
この回答へのお礼

第3パラメータとは近似値とか完全一致とかそういったことなのでしょうか。
本当に何も考えず、VLOOKUPと同じ感覚で完全一致の0指定していました。
ちゃんと理解して使わないとダメですね。教えていただきありがとうございます。

お礼日時:2019/02/02 21:34

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