エクセル2003のシートにA1からL1000までランダムに単語が入力されています。この状態から多く入力されている単語を上から10個、単語名とランクと個数を調べたいです。
何かいい方法があれば教えていただきたいです。
https://www.axfc.net/u/3867458
言葉で説明できないのでファイルをアップしてます。参照してください。
やったことは、
複数行列を1行に。
重複の削除
計数
並び替え
です。値のみ貼り付けを所々しています。
すぐに思い浮かんだのが「ピボットテーブル」です。
Excel2003と言うことで、環境による違いが気になるところですが、
ExcelXPの環境があったので試してみました。
機能的にはまず大丈夫のようです。
Excel2003でも問題なくそのまま動作すると思います。
考え方は、
(1) データの1次元化(1列化)
(2) 個数分析
(3) 並べ替え
で、これをピボット機能を利用すると簡単に出来ることです。
これを構成するのにVBAマクロを作成したみました。
A~L列、1000行までのデータエリアのワークシートを前面に表示したうえで、
マクロを起動すると、上の手順を実行します。
結果はP列に単語名、Q列にその個数、これを個数の多い順に上から表示します。
(なお、N列は、中間作業用エリアとして使用します)
いったん構成後は、データを変更した場合にもピボットの「データの更新」を手操作で行うだけ。
サンプルのExcelブックを提示しますので、試してみてください。
https://drive.google.com/open?id=1-ZNjqruCuIfMlx2FD3sR3Y_uXGcaRBCi
以上。
コメント(1件)