Excelの便利機能を使ってマクロを記録する
ある会社の温度湿度データがあるとします。
(A~D列1行目は題目にします)
ここのデータへテーブルを作成し、日付のスライサーを挿入します。その流れのマクロの記録を行います。
マクロはこうなります
Cells.Select
Application.CutCopyMode = False
Columns(“A:D”).Select
Application.CutCopyMode = False
ActiveSheet.ListObjects.Add(xlSrcRange, Range(“$A:$D”), , xlYes).Name = “テーブル1”
Range(“A2”).Select
ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.ListObjects(“テーブル1”), “日付”). _
Slicers.Add ActiveSheet, , “日付”, “日付”, 185.25, 639.75, 144, 210
ActiveSheet.Shapes.Range(Array(“日付”)).Select
結果はこの様になります
テーブルを作成し、スライサーの挿入により、簡単にファイルターをかける事ができます。
テーブル、スライサーはExcel機能の中に於いても、とっても便利な機能です。
テーブルとスライサーの組み合わせは、データを追加しても、しっかり追加データを更新し、スライサーにも、しっかり更新してくれます。又、【SUBTOTAL】関数を入れ平均値や合計値などの関数を入れてもデータに合わせ更新してくれるので楽にデータ更新が行えます。
その追加データを入れた場合も共有したいと思います。↓↓
例としてデータを1日分増やします。(17日)
1日分(17日)が増えたのがわかります。
この様に常にデータを更新していく作業があったらスライサーは本当に便利です。
次に、J2へSUBTOTAL関数を入れ温度の平均 J4に湿度の平均を入力した場合↓↓
データを追加すると(17日)
しっかり更新しています。
まとめ
今回は説明の為、テーブルとスライサーと平均値3つを同じシートにて行っていますが、平均値とスライサーを別シートに展開すれば、スライサー操作にて日付毎の平均値が見れます。
この様に、便利な機能+関数+VBAの組合せによりより良い自動化が出来ると思います。