- ベストアンサー
エクセル2010で必要なフィールド名の抽出
必要なフィールド名の列だけ抽出しようと思っていますが、データの量が膨大で なかなかはかどりません。 例えば A列:生年月日 B列:性別 C列:出生都道府県 D列:電話番号 E列:FAX番号 ・・・・・ とフィールド名が並んでいたとして、C列・E列・J列・Z列だけ抜き出して 新しいシートに移そうと思っています。 行は何もいじりません。 手作業ではもちろんできますが、データ量が多くて一つ一つの作業で固まるのと 同様の作業を数十回繰り返さないといけないので、 できればVBAなどで指定した列だけ抜き出せるものはないかと探しています。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
シート1は元の表で1行目には必ず項目名が入力してあるとします。 そこでシート2にデータを表示させるのですがシート2の1行目には抜き出したい項目名をシート1に合わせて入力します。 例えばA1セルには出生都道府県のように入力します。表はこの1行目の項目名に相当するものが選択されて表示されますので必ず入力することが必要です。 そこでA2セルには次の式を入力して右横方向にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(A$1="","",IF(INDEX(Sheet1!$A:$Z,ROW(A2),MATCH(A$1,Sheet1!$1:$1,0))=0,"",INDEX(Sheet1!$A:$Z,ROW(A2),MATCH(A$1,Sheet1!$1:$1,0)))) シート1のC列であるとかE列であるとかにこだわることはありません。抽出したい項目名をシート1の用語と同じ項目名でシート2の1行目に入力すればよいでしょう。
お礼
ありがとうございます!