重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

お世話になります。
エクセル2013使用中です。関数、マクロはネットをみながら勉強中です。
以下のことで悩むレベルです。
IDを基にした2つのシート(sheetA・sheetB)があり、其々に日付順のデータがあるのですが、
sheetAのIDと日付の直近のデータをsheetBから探し出し、sheetAに移すという作業を検討しています。
イメージ
sheetA
ID 平成10年1月1日 データA1
ID 平成11年1月1日 データA2
ID 平成12年1月1日 データA3
sheetB
ID 平成9年12月31日 データB1
ID 平成10年12月31日 データB2
ID 平成11年12月31日 データB3

これを
sheetAあるいは別シートに
ID 平成10年1月1日 データA1 平成9年12月31日 データB1
ID 平成11年1月1日 データA2 平成10年12月31日 データB2
ID 平成12年1月1日 データA3 平成11年12月31日 データB3

という形式でまとめられればと考えています。
データ自体はsheetA/sheetBともに数百件あり、途方に暮れている次第です。
詳しい方、ご教授願えれば幸いです。

A 回答 (1件)

こんにちは!



>sheetAのIDと日付の直近のデータをsheetBから探し出し・・・
の「直近」とはA列の日付を超えていないデータで!という解釈です。

↓の画像のように元データはSheet1にあるとします。

Sheet1のC2セルに
=IF(COUNTIF(Sheet2!$A:$A,"<="&$A2),INDEX(Sheet2!A$1:A$1000,MAX(IF((Sheet2!$A$1:$A$1000<=$A2)*(Sheet2!$A$1:$A$1000>0),ROW($A$1:$A$1000)))),"")

配列数式なので、Ctrl+Shift+Enterで確定! → 隣りのD2セルまでコピー → C2セルの表示形式を「日付」にします。

最後にC2・D2セルを範囲指定 → D2セルのフィルハンドルで下へコピーすると
画像のような感じになります。m(_ _)m
「同じIDで重複するデータから直近の日付の」の回答画像1
    • good
    • 0
この回答へのお礼

ありがとうございました。
助言をもとに、データ抽出できました。
機会がありましたら、またよろしくお願いいたします。

お礼日時:2017/05/05 09:18

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