- ベストアンサー
エクセル 別シートへの集計方法について
- エクセル2007を使用し、顧客へのアプローチ進捗を管理しています。成約を示す【★】を入力した列のみ、成約一覧として別シートへ自動的に転記・集計する方法をご紹介します。
- また、成約一覧に転記するセルを指定することも可能です。具体的な手順や注意点について詳しく解説します。
- この方法を使えば、手入力の作業を無くして効率的に進捗管理を行うことができます。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 一例です。 ↓の画像(アップする都合上、列数は多くしていません。列範囲は適宜変更してみてください。)で Sheet1のデータの内、A列が「★」の行のみを表示するようにしてみました。 Sheet1に作業用の列を設けています。 作業列I2セルに =IF(A2="★",ROW(),"") という数式を入れオートフィルでずぃ~~~!っとかなり下までコピーしておきます。 そしてSheet2のA2セルに =IF(COUNT(Sheet1!$I:$I)<ROW(A1),"",INDEX(Sheet1!$A:$G,SMALL(Sheet1!$I:$I,ROW(A1)),MATCH(A$1,Sheet1!$A$1:$G$1,0))) という数式を入れ列方向と行方向にオートフィルでコピーすると 画像のような感じになります。 参考になれば良いのですが・・・m(__)m
その他の回答 (4)
- imogasi
- ベストアンサー率27% (4737/17069)
関数でやりたいのか。 関数では抜き出し問題は複雑になる。フィルタ操作を知らないわけでなかろう。仕事で忙しい中で関数などでやるのは時間の無駄。VBAでやるのも、習得までに時間がかかる。 フィルタオプションの設定でも良いのではないかな。私は今までも「imogasi方式」というのを、馬鹿の1つ覚えのように紹介してきたが、Googleで「imogasi方式」で紹介すれば、過去の抜き出し問題の一部(でも数百)回答を見ることが出来る。 週に2-3どこの問題が出るが、回答のパターンは、そんなに毎回進歩する訳ではない。
お礼
ご回答ありがとうございました。。 ご指摘の通り、関数を使用するのは時間の無駄かもしれません。。 また、「imogasi方式」という言葉は初めて聞きましたので、 改めて調べてみます。
- KURUMITO
- ベストアンサー率42% (1835/4283)
回答No2です。シート2でのA2セルへの入力の式は次のように訂正してください。 =IF(OR(ROW(A1)>MAX(Sheet1!$U:$U),COUNTIF(Sheet1!$1:$1,A$1)=0),"",INDEX(Sheet1!$A:$T,MATCH(ROW(A1),Sheet1!$U:$U,0),MATCH(A$1,Sheet1!$1:$1,0)))
- KURUMITO
- ベストアンサー率42% (1835/4283)
シート1のA1セルには進捗、などの項目がT1セルまで入っているとして、それぞれのデータはその下方にあるとします。 作業列をU列に設けU2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="★",MAX(U$1:U1)+1,"") シート2ではシート1での項目名のうちで表に取り込みたい項目の名前をシート1の場合と同じ文字で入力します。 A2セルには次の式を入力してT2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(ROW(A1)>MAX(Sheet1!$U:$U),"",INDEX(Sheet1!$A:$T,MATCH(ROW(A1),Sheet1!$U:$U,0),MATCH(A$1,Sheet1!$1:$1,0))) これでシート2の1行目に並べた項目に沿ったデータがシート1から取り込まれて表示されます。
お礼
ご回答ありがとうございます。 sheet1とsheet2では、項目の順序を変更してしまうとダメなのでしょうか? なかなか難しいですね。。 使用されている関数については、学習します。 ありがとうございました。
- NNori
- ベストアンサー率22% (377/1669)
マクロをVBAで書いて実行するときれいにできるのですが。 それが難しければ、オートフィルタで★がついてるものだけにして表示したくない列を非表示にするような仕掛けを作るのが早いでしょう。
お礼
ご回答ありがとうございます。 おっしゃる通り、オートフィルタで十分事足りるのですが、 別シートへ転記することを、忘れる方もいるものでして・・・。
お礼
画像付でのご回答ありがとうございます。 回答で使用されている関数組合わせを勉強し直しますが、 やはり、なかなか難しいですね。