というわけで、初めてスライサーなる機能を使ってみました。こいつは便利だ! ダミーデータ5000件
hogehoge.tk
住所が凶悪なセル結合
ばらして少し分類する。年代追加
班(ランダム1-10)を3つの課に分ける
ちょい順番変えて整えますか。後値貼り付けしておきましょう。
この黄色い個人情報はいらないから削除。
マクロ概要を考える。
- A,C,H列で区切り位置を実行して数値に変換
- テーブルを作成
- シート追加
- 新しいシートにA:D,F:I,J,Kのスライサーを追加
シート1はpersonal_infomation
シート1のマクロ
Sub add_kugiri() '区切り位置 Columns("A:A").TextToColumns Columns("C:C").TextToColumns Columns("H:H").TextToColumns 'テーブル作成 Me.ListObjects.Add(xlSrcRange, Range("A1").CurrentRegion, , xlYes).Name = "ソース" Me.ListObjects("ソース").TableStyle = "TableStyleLight9" Me.ListObjects("ソース").ShowTableStyleColumnStripes = True End Sub
シート2はslicer
標準モジュール
Sub makeTable() 'slicerのページ選択 Sheet2.Select '列幅20字 Columns.ColumnWidth = 20 'slicerタイトル Dim slTitle: slTitle = Array("", "連番", "課", "班", "性別", "都道府県", "郵便番号", "年代", "出身地", "血液型") Dim i As Integer Dim t As Double Dim l As Double Dim w As Double Dim h As Double For i = 1 To UBound(slTitle) t = Sheet2.Cells(1, i).Top l = Sheet2.Cells(1, i).Left w = Sheet2.Cells(1, i).Width h = Range(Sheet2.Cells(1, i), Sheet2.Cells(10, i)).Height ActiveWorkbook.SlicerCaches.Add(Sheet1.ListObjects("ソース"), slTitle(i)).Slicers.Add _ ActiveSheet, , slTitle(i), slTitle(i), t, l, w, h Next End Sub
コレ例えば、1課の30代以上の北海道の顧客・・・とか
とても視覚的にわかるんすよ!! コレは便利!!(2回め)