• ベストアンサー

VLOOKUP関数について。

次の写真で、製品名をコード(発COの 1の位)の3列目と、分類名の 2列目を&で組み合わせて例えば、Kねじのように出したいのですが、#N/Aというエラーが出ます。どうすれば良いのでしょうか?ご教授いただけないでしょうか?すみません。

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

  • ベストアンサー
回答No.7

=VLOOKUP(MOD(A3,100),$N$4:$Q$8,3)&VLOOKUP(QUOTIENT(A3,100)&"番台",$N$12:$P$15,2) =VLOOKUP(MOD(A3,100),$N$4:$Q$8,3)&VLOOKUP(QUOTIENT(A3,100)&"00番台",$N$12:$P$15,2) もしくは =VLOOKUP(MOD(A3,100),$N$4:$Q$8,3)&VLOOKUP(QUOTIENT(A3,100)*100&"番台",$N$12:$P$15,2) 本来は、↑が、わかりやすいかと思いますが、 QUOTIENTは、分母を10にしても、100にしても問題がないようです。 検索値を1番台でも 10番台でも、100番台でもいいようです。 あとはオートフィルで、下にコピペすれば、求める結果が出てきます。 できれば、VLOOKUPよりも INDEX,MATCHを使うほうが後々楽だとは思いますが・・・

その他の回答 (6)

回答No.6

=VLOOKUP(MOD(A3,100),$N$4:$Q$8,3)&VLOOKUP(QUOTIENT(A3,10)&"番台",$N$12:$P$15,2)

回答No.5

=INDEX($N$4:$Q$8,MATCH(MOD($A3,100),$N$4:$N$8,0),MATCH("コード",$N$4:$Q$4,0))&INDEX($N$12:$P$15,MATCH(QUOTIENT($A3,100)*100&"番台",$N$12:$N$15,0),MATCH("分類",$N$12:$P$12,0))

回答No.4

VLOOKUPでもいいけど、INDEX,MATCHを使うほうがいいように思います。 =INDEX($N$4:$Q$8,MATCH(MOD($A3,100),$N$4:$N$8,0),MATCH("コード",$N$4:$Q$4,0))&"ねじ" ついでに =QUOTIENT(A3,100)&INDEX($N$4:$Q$8,MATCH(MOD($A3,100),$N$4:$N$8,0),MATCH("コード",$N$4:$Q$4,0))&"ねじ" とすると1Kねじ、 2Kねじ というように COの頭の文字を付加することができます。

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

提示の数式に誤りがあります。 =VLOOKUP(MOD(A3,10),$N$5:$Q$8,3,0)&VLOOKUP(A3,$N$12:$P$14,2,1)                        ↓ =VLOOKUP(MOD(A3,10),$N$5:$Q$8,3,0)&VLOOKUP(A3&"番台",$N$12:$P$14,2,1)

  • chie65535
  • ベストアンサー率43% (8526/19383)
回答No.2

=VLOOKUP(MOD(A3,10),$N$5:$P$8,3,0)&VLOOKUP(A3&"",$N$12:$O$14,2,1) 数値のままで文字列を検索しようとするとエラーになるので、「100番台」のような文字列をキーにして検索する時は、空文字列を連結して「文字列に変換して検索」して下さい。

  • kkkkkm
  • ベストアンサー率65% (1623/2463)
回答No.1

MOD(A3,10) じゃなくて MOD(A3,100) で試してみてください。

関連するQ&A

  • Vlookup関数について

    sheetAのK列に、A列(書式は文字列)の値に一致するsheetBのA列(書式は文字列)の中から6列目の値を抽出したい。 SheetAのK列に =VLOOKUP($A2,SheetB!$A$3:$F$23,6,FALSE) としsheetB-F列の金額を入力したいのですが、「#N/A」のエラーが出ます。改善策ご教授願えませんでしょうか?。 sheetA A列 ~ K列 2210      190円 2210      190円 2209      150円 2209      150円 2208      80円 2208      80円 2208      80円 sheetB A列   B列  C列 D列 E列 F列 タイトル01                タイトル02                 2210             190円 2209             150円 2208             80円 2207              :  :               :  :

  • VLookUp関数の使い方

    VLookUp関数で[検索の型]をFalseにすると、検索値と同じ値がないと エラーコード(#N/A)を返してきます。 検索値と同じ値がないときは、別の処理をしたいので、エラーコードではなく別の文字列を返してほしいですが、 できますか?

  • VLOOKUP関数で困っています。

    コード番号の下二桁を取り出して、その値を表から探し出して商品名を表示させる作業をVLOOKUPで設定しようとしていますが、うまくいきません。 おそらく、下2桁を取り出したセルにはRIGHTB関数の計算式が入っており、取り出された2桁の文字列ではなく、計算式を表の中から探し出しているようでN/Aのエラーメッセージです。このような場合、どのようにすればよいのでしょうか。

  • エクセルのVLOOKUP関数について

    エクセルのシート(1)に組合員コード(7桁),氏名,商品,数量・・・が入力してあって、列を挿入し、その組合員コードの左3桁を表示するLEFTの文字列関数を入力します。 それによって3桁が表示され、その3桁のコードは、支店コードを意味するので、シート(2)に支店コード、支店名が入力してあるのでそこから参照するようにシート(1)の3桁が表示されている隣に新たに列を挿入し、シート(2)の支店コードから支店名を引き出すようにVLOOKUP関数を入力したら、「N#A」という表示が出て支店名が表示されません。 LEFT関数によって表示された文字列だと「N#A」で支店名が表示されないのですが、自分で3桁の数字を入力すると支店名が表示されます。 3桁の文字列の結果の値だけをコピーしても、「N#A」が表示され、支店名が表示されません。 文字列関数によって表示された結果から、VLOOKUPで参照は出来ないのでしょうか? 1つずつ自分で数字を入力するしかないのでしょうか? 他に何か別の方法でも構いませんので、教えていただけないでしょうか?

  • VLOOKUP関数

    うまく質問の内容が伝わるかわからないんですがわかった方は教えてください。 今、会社でVLOOKUP関数を使ってコードを入れると取引先が出るように数式を入力したんですけどどうしてもわからないところがあって質問しました。 取引先一覧表        A         B 1  コードNo.     取引先 2    01        **会社 3    02      ○○商事       :       :      11    10      △△会社 12    11     ▼▼運輸 などと表を作りました。A列は文字列に設定してあります。 別のシートに集計表を作ってコードNo.を入れると取引先が出るようにはなったのですが集計表のコードNo.を入れる列は標準に設定してあり01~09までは「01」と入力しても「1」と出てしまうので検索できず「#N/A」と出てしまいます。 また文字列で設定すると01~09までは出てくるんですが10以降が今度は「#N/A」と出てしまいます。 出来たら集計表のコードNo.も「01」とか頭に「0」をつけたいんですがやり方ってあるのでしょうか?    

  • VLOOKUPで上手く表示されません

    以下のような商品の一覧を作成し、A列からコード番号(00000)項目、商品名、単価と表を作成しました。(100品目ほど) ≪例≫                  A列   B列    C列   D列    S列   T列    U列   V列 00001  文房具  ノート  \120   00001  文房具  ノート  \120 01252  飲料水  お茶   \150   08012  #N/A   #N/A   #N/A 08012  文房具  鉛筆   \100 ⇒ 00002  衣料品  Tシャツ \3000 00002  衣料品  Tシャツ \3000   06509  #N/A   #N/A   #N/A 06509  書籍   雑誌   \500 00003  食品   ガム   \120 関数 T1=VLOOKUP(S1,A1:D6,2,FALSE)=文房具(それぞれの列番号を参照) 上記のように他の列で売り上げた分だけを抽出したいのでVLOOKUPを使ってコード番号を入力すると検索できるように関数を作りましたが上手く出ません。 00001や00002は普通に出るのですが00001の次に08012を入力すると#N/Aが出てしまいます。 商品のコード表を並び替えても00001は出ますが08012は#N/Aが出てしまいます。 どうしたら上手く表示できるのでしょうか???

  • vlookup関数で#N/Aエラーが出ます

    エクセル2000を使用しています。 "Sheet5"のM列にある「商品コード」を元に別シート"商品金額マスタ"から 商品金額を"Sheet5"のO列に表示させたいのですが、#N/Aエラーが出てしまいます。 O列には以下の数式を入れています。 =IF($M2="","",VLOOKUP($M2,商品金額マスタ!$A$2:$C$5,3,FALSE)) M列の各セルをクリックするとなぜか数式が反映され、O列に正しい値(商品金額)が表示されるのですが、 これはどういったことなのでしょうか? "Sheet5"のM列は元々"Sheet5"のA列にある商品コードの左6文字をLEFT関数で選んでいます。 この6文字は頭にゼロがつく商品コード1桁から4桁のものです。 #N/Aエラーが出るのは、このゼロが原因だったりしますでしょうか? どうぞよろしくお願いします。 "商品金額マスタ"     A列     B列      C列 1  商品コード  商品名    商品金額(税抜) 2  000001    Tシャツ     2,660 3  000002    パンツ      3,000 4  000003    タンクトップ   3,000 5  000004    長袖Tシャツ    3,000

  • vlookup関数についてですが。

    こんにちは。 仕事で使う注文書をエクセルで作っています。 sheet1が注文書本体。sheet2が商品一覧(データベース形式)で左からコード番号(5桁)、商品名、内容量、単価などと並んでいます。 問題は、注文書のsheet1のコード番号を入力する箇所が、セルが5つ横並びで、1セルに1文字づつ入れるようになっています。 そこで、考えたのが注文書の5桁のコード番号を取得するセルを設けそこに(=D18&E18&F18&G18&H18のようにして)5桁のコード番号を取得、そのコード番号に対応するセルをsheet2の商品コードから抜き出し、その横の商品名を、sheet1注文書の商品名をN18に返すようにしました。(=IF(I18="","",VLOOKUP(I18,Sheet2!A2:E400,2,FALSE)) しかし、N18に返ったのは、#N/Aでした。 なぜでしょうか? どのようにすれば、N18に商品名を返すことが出来るでしょうか?

  • ExcelのVLOOKUP関数について教えて下さい

    AのシートにA列に番号、B列に会社名を入力、しB以降のシートは月毎別に作成し、番号を入力して会社名を引っ張ってくると言う形のVLOOLUP関数を作りました。 番号はバラバラに入力するので、1の後に50があったりその後に10があったりします。 今までそれで上手く会社名が引っ張ってこれたのですが、先日24行目に5という数字を入れたら、 「#N/A」のエラーが出ました。 エラー内容は「無効な値のエラー」と出ていますが、Aのシートには5のデータは入力されており、20以降の数字を入れると会社名が正しく表示されます。 関数が間違っているのかと思い、別シートと比べましたが同じでした。 ちなみに関数は次の通りです。Aのシートのデータは2行目から番号1→147行目に番号146のデータが入っています。 =IF(A24="","",VLOOKUP(A24,店名!B22:C167,2,FALSE)) 何がおかしいのか全く分からず、途方に暮れております。 アドバイスをお願いします。

  • VLOOKUP関数の使い方について

    以前コード番号を入力すると自動的に商品番号が出るようにしたいと質問させていただきました。 教えていただいた方法を使い おかげさまでコード番号を入力すると隣のセルに商品番号が出るようになりました。 ただ一緒に単価も入力させたいのですがそれができません。 入力本体は(シート名 「仕入れ表」) E列 コード番号 F列 商品名 G列 数量 H列 単価 I列 小計(G*H) という構成になっています。 (A~C列は他の項目が入っています) 参照するシート名「cade」 同じブック内にあります。 A列コード番号 B列商品名 C列単価 が入っておりA~C列までを名前の定義で 「cade表」としてあります。 「仕入れ表」のI列(小計) の二行目より =IF(E2<>"",G2*H2,"") の数式がコピーしてあります。 同じく 「仕入れ表」のF列には =IF(E2<>"",VLOOKUP(E2,cade表,2,FALSE),"") と数式を入れました。 結果コード番号を入力すると商品名は出ますが 単価は入力されません。 単価も同時に入力する為にはどのようにしたらよろしいでしょうか? どなかた教えていただけると助かります。 宜しくお願い致します。

専門家に質問してみよう