• ベストアンサー

「エクセルでデータのある行だけを他のシートに抽出する」を参考にしたのですが・・・

下記過去の質問・回答を見つけ私も参考にさせて頂きましたが手詰まって困っています。 http://okwave.jp/qa943364.html なおこの質問の数式・例は全て過去質問の回答者:imogasiの回答を参考にさせて頂きました。 やりたい事→データを抽出する場所(A1をA3/B1をB3)を変更したいのです。 現状は(例データ)Sheet2のA1:B9(C列は関数式を入れた結果) A  B C 210 伊藤 1 211 山田 2 212 0 2 214 2 216 近藤 3 217 鈴木 4 219 0 4 220 4 221 大田 5 Sheets2の C1に=IF(A1="","",COUNTA($B$1:B1)-COUNTIF($B$1:B1,0))がはいり下にコピーしてます。 抽出するSheets3の A1に=IF(ROW()>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW(),Sheet2!$C$1:$C$30,0)-1,0)) B1に=IF(ROW()>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW(),Sheet2!$C$1:$C$30,0)-1,1)) 上記でうまくデータを抽出できるのですが、抽出する場所をA1及びB1を変更するとうまく抽出できません。 抽出場所をA3及びB3にする為にはどのような工夫が必要になるのでしょうか?

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

A3に=IF(ROW()-2>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW()-2,Sheet2!$C$1:$C$30,0)-1,0)) B3に=IF(ROW()-2>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW()-2,Sheet2!$C$1:$C$30,0)-1,1)) または A3に=IF(ROW(A1)>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW(A1),Sheet2!$C$1:$C$30,0)-1,0)) B3に=IF(ROW(B1)>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW(B1),Sheet2!$C$1:$C$30,0)-1,1))

youno321
質問者

お礼

早速の回答ありがとうございます。  今日試したところうまくいきました。 非常に助かりました。

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

されたい内容を良く理解できていませんが、以下の式で行けませんか? A1に  =IF(ROW(a1)>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW(a1),Sheet2!$C$1:$C$30,0)-1,0)) B1に  =IF(ROW(a1)>MAX(Sheet2!C:C),"",OFFSET(Sheet2!$A$1,MATCH(ROW(a1),Sheet2!$C$1:$C$30,0)-1,1))

youno321
質問者

お礼

回答ありがとうございます。 試してはいないのですが、勉強させていただきます。