エクセルマクロ・VBA達人養成塾 小川です。
今日から何日かかけて、最近ある受講生の方から受けた質問をベースに、解説をしていきます。
こんな表がある。
|A列 |B列 |C列 |D列 |E列 | -------------------------------------------------------------- 1 行目 |ID |受信日時 |企業名|内容 |タイプ | -------------------------------------------------------------- 2 行目 |1 |2012/2/1 |A社 |××支払利息 |Comment | -------------------------------------------------------------- 3 行目 |2 |2012/2/2 |B社 |×□制作料 |Flash | -------------------------------------------------------------- 4 行目 |3 |2012/2/3 |C社 |×□賃貸料 |Periodical| -------------------------------------------------------------- 5 行目 |4 |2012/2/4 |A社 |×凹委託費用 |Report | -------------------------------------------------------------- 6 行目 |5 |2012/2/5 |C社 |×凹実施料 |Comment | -------------------------------------------------------------- 7 行目 |6 |2012/2/6 |A社 |□凹商品売却 |Report | -------------------------------------------------------------- 8 行目 |7 |2012/2/7 |C社 |□凸保険料 |Flash | -------------------------------------------------------------- 9 行目 |8 |2012/2/8 |B社 |△×支払利息 |Comment | -------------------------------------------------------------- 10行目 |9 |2012/2/9 |C社 |△□不動産取引|Flash | -------------------------------------------------------------- 11行目 |10 |2012/2/10|A社 |△○制作料 |Report | -------------------------------------------------------------- 12行目 |11 |2012/2/11|A社 |△凹調査料 |Comment | -------------------------------------------------------------- 13行目 |12 |2012/2/12|B社 |○×荷役料 |Comment | -------------------------------------------------------------- 14行目 |13 |2012/2/13|E社 |○□リース料 |Comment | -------------------------------------------------------------- 15行目 |14 |2012/2/14|B社 |○□代行費用 |Flash | -------------------------------------------------------------- 16行目 |15 |2012/2/15|C社 |凹×リース料 |Flash | -------------------------------------------------------------- 17行目 |16 |2012/2/16|F社 |凹□支払利息 |Flash | -------------------------------------------------------------- 18行目 |17 |2012/2/17|A社 |凸×作成料 |Comment | -------------------------------------------------------------- 19行目 |18 |2012/2/18|B社 |凸×制作料 |Flash | -------------------------------------------------------------- 20行目 |19 |2012/2/19|A社 |凸△賃貸料 |Flash | -------------------------------------------------------------- 21行目 |20 |2012/2/20|B社 |凸凸制作料 |Periodical| --------------------------------------------------------------
このとき、以下のように、どの対象のどのタイプが何回出現したかを集計したい。
|A列 |B列 |C列 |D列 |E列 |F列 | ----------------------------------------------------------- 1 行目 |企業名|合計 |Flash|Comment|Periodical|Report| ----------------------------------------------------------- 2 行目 |A社 |7 |3 |4 |0 |0 | ----------------------------------------------------------- 3 行目 |B社 |6 |3 |2 |1 |0 | ----------------------------------------------------------- 4 行目 |C社 |5 |3 |1 |1 |0 | ----------------------------------------------------------- 5 行目 |D社 |0 |0 |0 |0 |0 | ----------------------------------------------------------- 6 行目 |E社 |1 |0 |1 |0 |0 | ----------------------------------------------------------- 7 行目 |F社 |1 |1 |0 |0 |0 | -----------------------------------------------------------
では、どうするか。
第一感は、ピボットテーブルを使うこと。
以下の要領。
ピボットテーブルウィザードを呼び出し。
次へをクリック。
元の表全部を選択。
完了ボタンを押す。
ピボットテーブルの列名フィールドには企業名を放り込む。
列のフィールドにはタイプを放り込む。
データアイテムは何でもよい。今回は「ID」。
一段落。
「合計/ID」となっているセルをダブルクリック。
ダイアログで「データの個数」を選択した。
あとは、列の順番を入れ替えたい等のニーズがあるなら、この表をコピペしてどっかに貼りつけてから、テキトーにいじってください ヾ(´ー`)ノ
…ということなのだが。
実は、その某受講生さんは、ピボットテーブルではなく、「連想配列」という、極めてマニアックなテクニックを駆使して作ったマクロを作られたようで。
「うまく行かない」ということでメールを送られてきた(汗
では、それがどんなマクロだったのかは、追って紹介します。
ちなみに、かなり長いです(汗
次回は、上記の操作を自動記録をしながら作ったマクロを紹介します。
それでは ヾ(´ー`)ノ