• 締切済み

参照

Excel2013使用です。 並び順のそれぞれ異なるコード1 と コード2 の表があります。 同じコードに対応する コード2の O列 「在庫2」、P列 「備考2」 に入っている内容を コード1の F列 「在庫1」、G列 「備考1」 にそれぞれ参照させたいです。 対応するコードがない場合、空欄とさせたいです。 出来れば画像のExcelの列・行を用いた数式を教えて下さい。 説明が下手で申し訳ございませんが、宜しくお願い致します。

みんなの回答

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.3

= IFERROR(  OFFSET(   $E$1,   MATCH(    1,    INDEX(     ($J2=$C$2:$C$7)*     ($K2=$D$2:$D$7)*     NOT(ISBLANK($F$2:$F$7))*     NOT(ISBLANK($G$2:$G$7))     ,,    ),   0   ),   COLUMN(A1),   1,   1  ),  "エラー" ) 添付図の、位置に 入力し フィルください 全項一致検索します。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

VLOOKUP関数というエクセルでも1,2を争う有名な関数がある。 コード1とコード2のコード(どちらも同じ体系・内容のコードだろう?別名にすると、紛らわしい書き方だ。)をもとに他の列のデータを引っ張ってくれば仕舞いなのだろう? もし、それではできないなら、この質問の特殊性を説明しておくべきだ。 Excelについてどんな勉強をしているのかな。独学かな。エクセル関数の解説書も読んでないのでは。エクセルのことを聞く友達もいないのかな。それでは問題の起こった時、質問ばかりしなければならない。WEB記事でも「エクセルVLOOKUP関数」で照会したら、記事がたくさんある。 http://www.tipsfound.com/excel/04vlookup2 ほか多数。 文章で書けばI列のコード2で、表のC2:G7を引き、C2の列の街頭行を見つけて、F,G列のデータをO,P列に持ってくればよいのでは。 すでにご回答があるが、質問者の説明がわかりにくいこと、余りのありふれたケースらしい質問に、本当にそれか、断定していないところを見ると、迷いも見えるようだ。

sipabaledclone
質問者

お礼

回答ありがとうございます。 仰る通り、独学です。 勉強もしていません。 仕事で必要なものを聞いて使っているだけです。 分からない人にはどうしていいかさえ分からないので そういう言われ方をしても???という感じです。 回答者様は頭がいいのですね。 そういう教師がいたことをふと思い出しました。 分からないことを聞きに行くのに、分からない人の気持ちが分からないといった顔で、難しい言葉をたくさん使って説明されて困りました。 ネット上に、どんなに同じ質問が多くても、列が変わっただけで分け分からなくなっちゃう私は、これからも何度も自分の言葉で尋ねます。 そうして優しい人に何度も助けて頂いていますから。 すいませんが宜しくお願い致します。

回答No.1

基本の関数を使って解決できるかもです。 使う関数は ・VLOOKUP ・IF ・COUNTIF の3つです。 例えば   F2セル:=IF(COUNTIF($J:$J,$C2)>0,VLOOKUP($C2,$J:$P,6,FALSE),"") として、必要分行方向にフィル。 G列も同様に考えればOKです。 関数の詳細は別途お調べくださいませ。

sipabaledclone
質問者

お礼

ご親切にどうもありがとうございます。 助かりました! 感謝いたします。

関連するQ&A

  • 【Excel】数式(参照するシートの変更)について

    Excel2003を使用しています。 あるファイルに『1月』『2月』…『12月』『決算』という 13枚のシートがあります。 『決算』シートのB8セルに「=IF('9月'!B6="","",'9月'!B6)」と数式が 入力されていて、この数式の中の参照するシートを9月→10月に 変更する場合、数式を9→10に書き換えてコピペする作業以外の 方法というのはあるのでしょうか? 同様の数式がB8:O45の範囲(1ページ目)に入力されていて (いくつか空欄のセルもありますが)これが20ページありますので 何か良い方法があれば教えていただきたいです。 (参照するシートと行が2行ずれているのも作業がしづらいところです) よろしくお願いします!

  • Excelで参照をして計算式を作る方法

    こんにちは。 Excelの数式で困っていますので、教えて下さい。 下のようなExcelの表で、 A2~D2、A3~D3、A4~D4の【数】にはゼロを含む何らかの数字が入ってて、 【空】は空欄です。    A列 B列 C列 D列 E列 1   1   2   3   4 2   数  数  数  数 3   空  数  数  数 4   空  空  数  数  E2、E3、E4に数式を入れたいのですが、2~4行目の数字が入っているか 入っていないかを1行目の数字に対応させて、 A2、A3、A4に数字が入っていれば、A1の数字を計算に入れて、空欄であれば 計算にいれない。 E2には1+2+3+4で【10】 E3には2+3+4で【9】 E4は3+4で【7】 というふうに数字が入っている欄だけを1行目の数字を絶対参照して合計を求めたいのです。 SUMIFという関数を使って、E2にSUMIF(A2:D2,▲,$A$1:$D$4)という式を入れてみたのですが、▲には半角スペース・*(アスタリスク)・?(クエスチョンマーク)などを入れてみたのですが、エラーで計算が成り立ちません。 ▲のところに【空欄】という意味のものを入れたいのですが、それがあるのかないのかわかりません。 もしくは、この数式を使うのではなく、他の数式を利用するのでしょうか? 説明が分かりにくいかもしれませんが、よろしくお願いします。

  • Excel2003 検索して値の参照

    お世話になります。 掲題の件で ご相談が御座います。 添付のような表がありまして、シートが2枚に分かれております。 数式を入れたいシート(表示用シート)に参照元シート(入力用シート)を図で貼り付けました。 ピンクの表が入力用シートになります。 入力用の「C列"エリア"」を「D列"更新日"」を参照して 日付が横並びになっている 表示用シートに各項目を反映させたいのですが、どのような数式を入れたら良いのか、 また そもそも表の作りに無理があるのか?と ちょっと煮詰まってしまっている状態です。 入力用シートは更新日と備考以外はプルダウンで選択するようにしています。 反映させたい表示用シートには「A列」に「エリア」が北海道~沖縄まであります。 日付は10月~3月まで用意されており 3行目、15行目、27行目、39行目、52行目に「月」が入っており、 4行目、16行目、28行目、40行目、53行目に「日」が入っております。 さすがに 2行にまたがった日付を参照するのは無理があるだろうと思い 1行目にフォントの色「白」で「2009/9/25」等 該当する列に日付を入れました。 しかし、その後に 入力用シートのC列D列を参照して どうやって 表示用シートに反映させたら良いかで困っております。 作業列を作るにしても どうやったら良いものやら、、 そもそも 全部横並びになっている所に無理があるのでしょうか? どなたか お分かりになる方がいらっしゃいましたら宜しくお願い致します。 説明不足等 御座いましたら何なりとお申し付けください。 宜しくお願い致します。

  • Excel2007で複数のセルを併せて参照して

    Excel2007で複数のセルを併せて参照してデータを抽出したいんですがやり方がわかりません。ここから質問になります。 セルO4,P4,Q4から下に向かって各セルにア、イ、ウ、エ、オのいずれかが(今のところ)セルO50、P50、Q50までデータとして入ってます。マクロボタンを押すと一行ずつデータが追加されます。 B3からD5に格子を用意しました。B3:D5にデータO,P,Qの最下行から2行上までをまとめてコピペします。コピペされたそれらを併せて参照してデータO4:Q48(今のところO50:Q50が最下行なのと2行上までがコピー範囲なのでQ48としました)から探してその1つ下の3列データ(O?,P?,Q?)をG3、H3、I3、から下に向かって抽出したいです。 私的にはUnionメソッドを使ってするのかなぁと思ってます。 ご協力お願いします。

  • エクセルの「IF+VLOOKUP」に関してのよくある問題で、意味のわからない相対参照があります

    「1.セル【C18】にセル【B18】の「商品コード」に対応する「商品名」を返す数式を入力して下さい。「商品一覧」の表を参照すること。 次に、「商品コード」が入力されていない場合は、「商品名」にエラーが表示されないように数式を修正して下さい。(シートに表があり、IF+VLOOKUPを使う問題です) 2.セル【C18】の数式をもとに請求書の表を完成させて下さい」(←「【C18】の下の行も同じように、商品コードから商品名を表示させれるように完成させなさい」っていう問題です) 上記のような問題があったのですが、 数式を入力して下にオートフィルして 完成させたのですが、【問題の解答】を見た限りでは 「セル【C18】を「=IF($B18="","",VLOOKUP($B18,$H$18:$J$29,2,FALSE))」と修正する」 と書いてありました。 ですが、数式の「$B18」の部分で「列を固定にする」 意味はあるのでしょうか? 「$」はなくてもちゃんと機能してますし、 表も完成してるように思うのですが・・・ あと、これは商品コードが空白の場合にはエラーが 出ないのでいいのですが、商品コードとは関係ない 文字列も入れた場合(間違った文字列を入れた場合)に エラーがでないようにする事もできますでしょうか?

  • 結合セルからの参照

    excel2007で、別シートの結合セル(縦方向に3行結合)から値を参照したのですが、3列分含まれてしまい、エラーが出てしまいます。 数式の内容から余計な部分を削除すれば問題ないのですが、作業量が増えてしまいます。 一発でエラー無く参照できる方法があれば教えて下さい。 よろしくお願いいたします。

  • セルに自動的入力させたい

    EXCEL2010を使用しています。 「表1」のような表があるのですが、D列が「子」である、C列のオレンジの部分が空欄なので 手動で入力しないといけません。 条件は装置名が同じである「親」と同じ日付が入ります。 なので結果は「表2」のようになります。 これを関数かVBAで自動的に入力されるようにできないでしょうか? もし関数できたとしてもC列には予め数字が入っている行があるので 空欄に飛び飛びで数式を設定するしかないでしょうか? 何か良い方法があればよろしくお願いします。

  • ExcelVBA 表に空白があれば行単位で詰めたい

    初心者です。 ExcelVBA2007で、A3:G15の表があります。(さらに実際は横にも同じようにI3:O3にもさらに下にも同じような表がいくつかあります) この表は、行ごとに1セットになっています。(例えばA3に分類、B3に商品名・・・G3に数のように) この表の所々に空欄があるのですが、一つの表の中の行がすべて空欄であれば上に詰めていきたいと思っていますがうまくいきません。後、D列には数式が入っているのですが処理がかわってくるのでしょうか?(今後数式を入れない方向に変えようかとも思っています) どうすればよいでしょうか? もしよかったら、同じ表に対する繰り返し処理のスマートな表記があれば教えていただければありがたいです。 申し訳ございませんが、ご教授よろしくお願いいたします。

  • EXCEL:複雑なデータの参照

    お世話になります。 現在顧客の予約を管理する表をEXCELで作成しています。 簡単なものでしたらVLOOKUPで参照すればよいのですが、結構複雑なものになってしまい、どうしても横向きの参照だけでなく縦向きの参照も同時に行わなければ出来そうにありません。 そこでINDEX関数を利用してやってみましたが、それでも出来ない部分が出てきてしまいご相談です。 シート1にお客様にお渡しする年間予約表を作成、シート2に元データを置きます。 やりたいことは、お客様にお渡しする予約表に顧客コードを入力すると自動的にそのお客様の表にデータが入るようにすること。 それと、途中で内容変更をしてもそれに対応した表が出来る事が条件です。 シート2の元データには、A列に顧客コード、B列に指名、C列に品名(1人に対して6種類の商品があるのでC1に商品1・C2に商品2・・・といった形で6行分で一人のデータとなっています。)、D~Gには、各商品には同じオプションが4つずつあるので、Dにオプション1・Eにオプション2・Fにオプション3・Gにオプション4となっており、Hに各商品の数の合計、Iにすべての合計金額があり、D~Iまでで1月分となります。 以降、J~O、P~Uは2月、3月のデータとなります。(画像参照) 現在問題なのは、オプションの参照とその数の参照がうまくいきません。 顧客コード1つに対して6列(6種類の商品)あり、そのどこかの商品+オプションに数字が入った時、お客様にお渡しする表にオプションとその数を表示するようにしたいのです。 IFやOR、ANDを駆使しても私の頭ではどうしても参照できませんでした。 何か良い方法があればご教授頂きたいと思います。

  • ExcelのVLOOKUP関数でわからないことが・・・

    N   ┃O       ┃P     ・・・   X   ┃    Y┃ Z 車番 ┃乗務員コード┃運転手 ・・・乗務員CD┃運転手┃車番 上記のような構成の表を作ってあります。 O列に数字を入力した時点で、N列・P列の両方がいっぺんに出るような関数を入れたいと言うのが目標です。隣のX列~Z列はその参照する表です。P列に =IF(O3="","",IF(O3=VLOOKUP(O3,$X$1:$X$202,1),VLOOKUP(O3,$X$1:$Y$203,2),#REF!)) と言う関数により片方はできました。Oに数字を入力した時点でP列には運転手の名前がちゃんと出ます。問題は隣の車番でして、同じようにO列の乗務員CDを参照させてVLOOKUP関数を設定したのですが、値を返してくれないどころか、Enterを押すと数式がそのままセルに表示された状態になってしまいます。ちなみにN列に打った関数は =IF(O3="","",IF(O3=VLOOKUP(O3,$X$1:$Y$202,2),VLOOKUP(O3,$X$1:$Z$203,3),#REF!)) です。しかももっとわからないことに、他にも同じ作業をさせているセルがいくつかあるのですが、唯一ココだけができないと言うことです。これはどうすれば良いのでしょうか? 下手な質問で申し訳ありませんが、これでわかる方がいましたら、是非、是非力を貸してください! よろしくお願いします。

専門家に質問してみよう