• ベストアンサー

いつもお世話になっています。

いつもお世話になっています。 エクセルで教えてください。 office2003を使用しています。 A     B     C 001   田中   愛知 002  鈴木  東京  003  佐藤   004  小林  徳島 005  大田 となっている表があります。C列は県名が入っているものと空白のものが混ざっています。 別のシートに、C列が空白のものをオートフィルタを使わずに抽出したいのです。 A    B    C 003 佐藤 005 大田 としたいということです。IFを使ってみましたが、うまくいきませんでした。 ご教授ください。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

シート1に元のデータがあるとして1行目は項目名があり2行目から下方にデータがあるとします。 D2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="","",IF(C2="",MAX(D$1:D1)+1,"")) その後に別のシートの2行目からデータを表示させるとしてA2セルには次の式を入力してB2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(ROW(A1)>MAX(Sheet1!$D:$D),"",INDEX(Sheet1!$A:$B,MATCH(ROW(A1),Sheet1!$D:$D,0),COLUMN(A1)))

hanauta00
質問者

お礼

早速のご回答ありがとうございました。 ばっちりできました。 感謝です。

その他の回答 (2)

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

一例です。 データシートをsheet1、抽出シートのA1に以下の数式を設定、入力完了時にshift+ctrl+emterキーを同時押下、縦横に必要分コピーして下さい。 因みにC列の範囲をC1:C5としていますので調整して下さい。 =IF(COUNTBLANK(Sheet1!$C$1:$C$5)>=ROW(A1),INDEX(Sheet1!A:A,SMALL(IF(Sheet1!$C$1:$C$5="",ROW(Sheet1!$C$1:$C$5),99999),ROW(A1))),"")

hanauta00
質問者

お礼

おかげさまで、今後の作業が楽になりそうです。 助かりました。 ありがとうございました。

  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.2

なぜ、オートフィルタを使いたくないのでしょうか? オートフィルタを使うのが、一番楽な方法だと思うのですが。

hanauta00
質問者

お礼

おっしゃるとおりなのですが、なんともコンピュータに疎い方が使用する 書類なので、できる限り自動でできるようにしたかったのです。 心の叫びを文字にしてくださり、すっきりしました。

関連するQ&A