• 締切済み

■エクセルで複数のセルが一致する場合に返す方法

色々試しているのですがどうしても出来ないのでどなたか教えて下さい。 例えば Sheet2に下記のような果物のその日の値段を表にした 値段表を作ったとします。    A   B   C   D… 1  日付  りんご みかん  ぶどう 2 1月1日  100   150   50 3 1月2日  200   150   40 そしてSheet2に、毎日買った分を書いていきたいのですが これを   A     B   C… 1 1月1日  りんご  100  2 1月2日  りんご  200 3 1月2日  みかん  150 ・ ・ ・ というようにA1が1月1日でB1が「りんご」だった時に Sheet1の1月1日のりんごの値段が 自動的に入るようにしたいのです。 IF関数でやってみたのですが、「AでありBである時、A'のB'の値を返す」という方法がうまくいきません。 分かりにくい説明かもしれませんがどうか良い方法を教えて下さい。

みんなの回答

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

例データ Sheet1に A1:D3 日付 りんご みかん ぶどう 1月1日 100 150 50 1月2日 200 150 40 果物種類が3種の例です。 ーーー 式 Sheet2の A1に =INDEX(Sheet1!$A$1:$D$100,INT((ROW()-1)/3)+1+1,1) と入れて第6行まで式を複写。 B1に =INDEX(Sheet1!$A$1:$D$100,1,MOD(ROW()-1,3)+1+1) と入れて第6行まで式を複写。 C1に =INDEX(Sheet1!$A$1:$D$100,INT((ROW()-1)/3)+1+1,MOD(ROW()-1,3)+1+1) と入れてだい6行まで式を複写。 ーーー 結果 Sheet2のA1:C6に 2006/1/1 りんご 100 2006/1/1 みかん 150 2006/1/1 ぶどう 50 2006/1/2 りんご 200 2006/1/2 みかん 150 2006/1/2 ぶどう 40 となる。 式で3となっているところが、果物の数が影響しているところ。 ここを実際にあわせて変えてください。 式を日数x果物数を超えて複写してもエラーにしない方法は主題で無いので略。 0=買わなかった果物数のセルの、対応行を省くのは難物。

  • ao777
  • ベストアンサー率34% (43/123)
回答No.4

#2です。 シート2のC1に入れるのですよ。必ず100という答えが返ってくるのですが。。。 サービスでエラー処理もすると、 =if(B1="","",INDEX(Sheet1!$A$1:$D$3,MATCH(A1,Sheet1!$A$1:$A$3,0),MATCH(B1,Sheet1!$A$1:$D$1,0))) ちなみにindex関数や、match関数でのデータ範囲は今回のケースのシート1のA1~D3にしてますので、実際にそれ以上ある場合は増やして下さい。 できるできないは、数式をそのままコピペして、質問と同じ表を作ってから試して下さい。こちらで実行確認済みなので、100が出ないということはありえません。 いきなり実際使っている表に入れて試すのではなく、必ず質問と同じ表を作ってから試して下さい。

tse-sie
質問者

お礼

勿論同じものをつくり、コピーペーストで試していたのですが、何か私の方でミスがあったみたいです。 動作しました。 ありがとうございました。

noname#204879
noname#204879
回答No.3

Sheet2!C1: =VLOOKUP(A1,Sheet1!A$1:D$100,MATCH(B1,Sheet1!A$1:D$1,0),FALSE)

  • ao777
  • ベストアンサー率34% (43/123)
回答No.2

シートがどちらも2になってるので、毎日買った分のほうのシートを2として、果物のその日の値段の表がシート1だとすると、 シート2のC1に =INDEX(Sheet1!$A$1:$D$3,MATCH(A1,Sheet1!$A$1:$A$3,0),MATCH(B1,Sheet1!$A$1:$D$1,0)) と入れて下方向にオートフィルして下さい。 尚、エラー処理してませんので、if関数等でして下さい。

tse-sie
質問者

補足

ご回答ありがとうございます。 質問に間違いがあり大変失礼致しました。 最初の方がシート1です。 (ao777様のおっしゃることで正しいです。) そして試してみましたが、やはりうまくいきません。 エクセルが大得意という訳ではないのでエラー処理というものも出来ません… 何か間違っているのでしょうか…

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

シート2のC1に=OFFSET(Sheet1!$A$1,MATCH(A1,Sheet1!A:A,0)-1,MATCH(B1,Sheet1!$1:$1,0)-1)を入力し、下方向にコピーして下さい。

tse-sie
質問者

補足

早速のご回答ありがとうございます。 試してみたのですが入力したC1にしか反映されず、 他のセルには別の値や、タイトルとして使っている「りんご」などの文字や#N/Aというようなエラーが表示されてしまいました… 何か違ったのでしょうか?

関連するQ&A

  • エクセルで選択した項目をマークする方法

    SheetBで選んだ項目を、SheetAの該当する項目の隣の列の四角を □から■になるように、数式を組みたいのです。 ・SheetA       A列  B列 1行目  □   りんご 2行目  □   みかん 3行目  □   ぶどう という表を作成しております。 SheetB       A列                                    B列 1行目  選択する果物を、B列のリストボックスより選んでください   {りんご,ぶどう、みかん} シートB列の (1,B)は、リストボックスで簡単に出来るのですが、 シートAの、(3、A)の、ぶどうを□から■にする方法がわからないのです。 当然、ぶどうの次に、りんごが選ばれれば、ぶどうは□、りんごを■にしたいのです。 解決方法をご存知の方がいらっしゃいましたら ご教授のほう宜しくお願いします。

  • エクセル 複数セル 統合・集計

    詳しい形は画像でアップしていますが,エクセルで品物の品名と,その種類の違いごとに統合・集計できないかと思っています。 これまで質問させていただくなかで,     A      B      C       統合セル    みかん2   ぶどう1   みかん3    みかん5,ぶどう1 と表記するすばらしいマクロを教えていただきました。 今度は,それを発展させた集計表(詳細は画像)ができたらうれしいと考えています。  A         B               C                統合セル 果物  果物4(みかん2,ぶどう2) 果物3(なし1,みかん2)  果物7(みかん4,なし1,ぶどう2) 野菜  野菜3(トマト3)        野菜1(カボチャ1)      野菜4(トマト3,カボチャ1) という風です。 マクロだけでなく,別表を作ったり,セルの配置を工夫したり…といった手が加わっても構いません。 同じような質問を繰り返してしまい,たいへん心苦しいですが,どうぞご教授いただけましたら助かります。   

  • エクセルで範囲内のデータを別シートにうつしたい

    エクセルで特定の範囲内の数値にあてはまるデータを別のシートに新たな表として作成したいのですが、簡単な方法があれば教えてください。 例えば Sheet1   A   B     C  1 25  ミカン   3000 2 30  リンゴ   4500 3  5  メロン   9800 4 17  ブドウ   1800 5 50  バナナ  1000 このようなデータを次のような表にしたいのです。 A列の数値が10~30のみ行ごと抜粋する Sheet2   A   B     C  1 25  ミカン   3000 2 30  リンゴ   4500 3 17  ブドウ   1800  よろしくお願いいたします。

  • エクセル関数何を使ったら良いのかわかりません

    エクセル関数についてお尋ねします。 例として項目を果物にしております↓ 表1でリンゴ・みかん・ぶどう・・・などの1年と2年の平均値を出したのですが、同じシート内の表2にその平均値をとばすようにしたいですがどうしたら良いのかわかりません。 表2のセル(B28)にリンゴと入力したら表1のリンゴの平均値がB29にとんでくるようにしたいです。B28はみかんのときもありぶどうのときもありますので、入力した文字にあった平均値をとばしたいのですが可能でしょうか? いろいろ関数などを調べてみましたが何を使用したら良いのかわからずずっと悩んでおります。

  • エクセル 複数セル 文字の統合

    エクセルで,次のような操作ができないかとご相談です。 セル  A   B    C    D    E     F    結合セル 品名 りんご みかん  なし  りんご  みかん  ぶどう  りんご2,みかん2,なし,ぶどう 結合セルには,「&」と”,”を使って「りんご,みかん,なし,りんご,みかん,ぶどう」とはできるのですが,重なりのある言葉に関しては,まとめて数字にできないかと思っております。 何かよいお知恵は無いでしょうか?ご教授いただければ助かります。

  • Excelでこういうことはできますか?

    Excel2000を使っていますが 例えば、シート1に A列    B列に 1月25日  りんご 1月10日  みかん 1月20日  みかん 1月25日  ぶどう 1月18日  りんご 1月20日  ぶどう  … というようにランダムにそれぞれ入力して シート2に「りんご」 シート3に「みかん」 しーと4に「ぶどう」 だけを抽出して日付順にまとめることは可能ですか? 可能であればその際に、どのような関数をどのように組み込めばできるのでしょうか? 初心者でもそれは可能でしょうか? 説明が下手で申し訳ございませんが、わかる範囲でのお答えをお願いいたします。

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

    エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。 たとえば、 <A列> <B列> <C列> 7/1 りんご 100円 7/2 ぶどう 200円 7/2 すいか 300円 7/3 みかん 100円 このような表があって、100円を含む行をそのままの形で、 別のセル(同じシート内)に抜き出したいのですが。 7/1 りんご 100円 7/3 みかん 100円 抽出するだけならオートフィルターでもできますが、 抽出結果を自動的に、別の場所に、常に表示させておきたいのです。 初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

  • エクセル2013 シート数を増やしていきながら集計

    エクセル2013で質問です。 条件 ・シート数が何枚になるかは未確定(順次コピーしてシートを増やしていく) 例えば8月1日というシートがあったとします。そこに下記のような品物数量表があります。  A    B    C 1果物 りんご  8 2野菜 レタス  2 3果物 梨    2 4果物 りんご  4  上記のような表を8月2日、8月3日・・・というシートにも内容違いで順次作っていきます。 1月単位で1BOOKにしていきますが、例えば、日曜や土曜は場合によってはシートを作らない事があります。月によって微妙にシート数が変わります。 これで、最初の1シート目に集計シートをつくって例えば上の8月1日の表のみで考えた場合、  A    B    C 1果物 りんご  12 2野菜 レタス  2 3果物 梨    2 と種類ごとに合計分類していきたいのですが、シートを増やすごとに集計シートの方の内容も自動で種類ごとに集計していくことは可能でしょうか?可能ならばどのような方法がありますか?

  • 複数条件に合致する場合のみセルを参照する

    複数条件に合致する場合のみセルを参照する関数式を探しています。   A B C 1 みかん イ 5 2 りんご ロ 3 3 いちご イ 2 4 みかん ニ 8 5 りんご ホ 6 上記のような表があって別シートに   A B C 1 みかん イ  と入れるとC1に『5』が参照値として表示されるような関数です。 複数の関数を組み合わせれば出来そうな気がするのですがわかりません。 どなたか教えて下さい。 よろしくお願いします。

  • 行内で空白、重複を除いた結果を別セルに表示したい

    A~D列に言葉が入っているのを、F列以降に空白、重複を除いて、結果を表示したいのですが、やり方がわかりません。(別シートではなく、同じシート内で処理したいです。) A~D列に入る言葉は200個程の種類があります。 行は4万行くらいのデーターがあるので行列を入れ替えた表には出来ません。 ジャンプで空白セル選択→まとめて削除をすると、データー数が多いので、パソコンが固まってしまいました。 なので、行ごとに処理をしたいのです。 よろしくお願いします。  A     B   C    D        F     G    H    I みかん ぶどう りんご みかん → みかん りんご ぶどう みかん (空白) (空白) みかん → みかん (空白) ぶどう りんご みかん → ぶどう  りんご みかん みかん ぶどう りんご すいか → みかん ぶどう りんご すいか

専門家に質問してみよう