例えばAファイルのシート1にお示しの表が有りA1セルからG1セルまでには項目名が有り、2行目から下方にデータが入力されているとします。そこで多数のデータに対応するためには作業行列を用意することです。
H2セルには次の式を入力し下方にドラッグコピーします。
=IF(C2<>"","LE"&COUNTA(C$2:C2),IF(D2<>"","RI"&COUNTA(D$2:D2),""))
次のBファイルのロッド番号1のシートのA1セルからG1セルまでにはAファイルと同じ項目名を入力します。
A2セルには次の式を入力しG2セルまでドラッグコピーしたのちに下方にもドラッグコピーします。
=IF(ROW(A1)>COUNTA([A]Sheet1!$C:$C)-1,"",IF(INDEX([A]Sheet1!$A:$G,MATCH("LE"&ROW(A1),[A]Sheet1!$H:$H,0),COLUMN(A1))=0,"",INDEX([A]Sheet1!$A:$G,MATCH("LE"&ROW(A1),[A]Sheet1!$H:$H,0),COLUMN(A1))))
これでAファイルでロッド番号1に記載のあるデータの行が表示されますね。
ロッド番号2のシートではA2セルには次の式を入力すればよいでしょう。
=IF(ROW(A1)>COUNTA([A]Sheet1!$D:$D)-1,"",IF(INDEX([A]Sheet1!$A:$G,MATCH("RI"&ROW(A1),[A]Sheet1!$H:$H,0),COLUMN(A1))=0,"",INDEX([A]Sheet1!$A:$G,MATCH("RI"&ROW(A1),[A]Sheet1!$H:$H,0),COLUMN(A1))))
お礼
回答ありがとうございます。 もう一度画像を添付して質問し直します。 いったんこちらの質問は終了とします。 ベストアンサーには式を記載して下さったこちらの方に差し上げます。 お二方ありがとうございます。
補足
内容が分かりにくくてすみません。もう一度記載します…。 日付~金額2まではA1~G1のセルに入力されています。 日付 No. ロッド番号1 ロッド番号2 得意先 金額1 金額2 8/22 5-11 123 ○×商事 100 8/23 5-12 555 △△株式会社 200 8/24 5-13 124 有限会社◆ 500 200 8/24 5-13 556 ○×商事 300 8/25 5-14 557 有限会社◆ 800 No.が同じものについては、金額1に金額2に入力された金額の合計が入ります。 (ロッド番号2の列の556の金額1は空欄になります。) Bのファイルはロッド番号1シート、ロット番号2シートで構成されています。 ロッド番号1シートは… No. ロッド番号1 得意先 金額1or2 ロッド番号2シートは… No. ロッド番号2 得意先 金額1or2 が必要項目です。 それぞれ、AのファイルよりVLOOK関数を使って参照されています。 No.が同じものについては金額1を参照する式を組むと合計金額が入ってしまうため、金額2が空欄以外の時は金額2を参照する…という式を組みたいのですが、VLOOK関数では対応できないためその他の関数でどのようにすればいいのかご教授いただきたいです。