どうもmamma_dsです。エクセル月報をTableau化したいお話をよく聞きます。エクセルは自由すぎますね、手間はかかりますけど。実際に自由すぎるエクセルをTableau化した事例(多少変えてますが)をご紹介していきたいと考えております。2024年4月号でご紹介した日付処理を活用しております。
この記事でお伝えする内容
今月のTableau月報 -自由すぎる一覧表-
2024年5月号は一覧表です。一覧表はいろいろな数値を一度に確認できるので、根強い人気があります。Tableau使いからすると、えー「伝統の一覧表」と思られるでしょうけど、まずはユーザーの期待に応えて、信頼を得て、それからもっといいデータ分析を提案するステップも重要かと思います。また、可視化していくうちに、段々とユーザーの方が何を分析したいのか理解が進みます。もちろん、最初に何を分析しているのか聞くのですが、大抵は後出しされます。
また、一覧表のメリットは、エクセル月報とTableau月報の数値が一致しているか確認しやすいことです。エクセル月報もマクロで処理されていることが多いので、聞いていた処理やフィルターを実際が違うことがよくあります。すごく、地味な作業ですがエクセル月報の一覧とTableau月報の一覧表をエクセルにコピペして差分や誤差をみえる化すると間違いに気が付くことができます。違いが見つかったら、地道に原因を調査してていきます。このような地味な作業もユーザの方とチャット等で共有してあげると、「この人は、すごく一生懸命やってくれて信頼できそう」と好感度アップにもつながります。
今月のTableau月報ポイント
・複数のメジャー(数値)を一覧表で可視化
・メジャー(数値)毎に色分けをする(知名度低いかも)
・それぞれのメジャー(数値)でソートできるようにする
活用する機能
・地味に面倒な計算フィールド
・メジャーネーム、メジャーバリュー
・メジャーバリューの色を個別に設定
補足説明
エクセル月報Tableau化2024年4月号-Tableau日付処理-がベースになっています。
Viz(Tableau月報)の作り方
ちょっと面倒な計算フィールドの作成
自由な一覧表作成には計算フィールドを使いまくることになります。今月や先月の数値はすべて計算フィールドで計算して、メジャーネームとメジャーバリュー(後で説明します)で可視化することになります。
先月と今月の判定
DATEDIFF('month',now(),[オーダー日(月報用)]) = [月報月]-1
DATEDIFF('month',now(),[オーダー日(月報用)]) = [月報月]
利益の計算
if [先月判定] then [利益] END
if [当月判定] then [利益] END
(sum([利益_当月])-sum([利益_先月]))/sum([利益_先月])
売上と数量も同様に計算フィールドで計算します
可視化
このように配置していけばよいのだがポイントがいくつか。
・メジャーネームとメジャーバリュー
・項目名を変更する
・順位を表示して、ソートもできるように
・メジャーバリュー毎に色をつける
自由な一覧表をメジャーネームとメジャーバリューで作成
メジャーバリュー:メジャーは数値、バリューは値。よって、数値の値
メジャーネーム:メジャー(数値)のネームは名前。よって、数値の名前
元々、メジャーネームにはすべてのメジャーが含めれている。メジャーネームをフィルターに入れて、表示するメジャーを制限している。
マーク下のメジャーバリューの一覧とメジャーネームのフィルターは等しい。
メジャーネームを列に入れるので、メジャーの名前が表示される。
メジャーバリューはメジャーの値なのでラベルに入れると数値が表示される。
メジャーネームメジャーバリューを用いた一覧表の作り方
普通に表を作る。利益_当月は連続。
次に表示するメジャー(利益_先月)を「表示形式」と表示される位置でドロップ
ドロップ直後に、メジャーネームとメジャーバリューが作成される。
メジャーバリューの一覧に次に可視化するメジャーを追加していく
売上、数量も表示完了
項目名を変更する
「利益_先月」で右クリックしてメニュー表示。別名の編集を選択。
「利益_当月」を「当月」に変更
売上も同じように「売上_当月」を「当月」に変更したいが、同じ別名は使えないので、「当月 」スペースを入れて目立たないように違う文字列にする
各メジャーでソート&順位を表示
各メジャーでソートすることが可能
index()で順番を一番左に入れると、各メジャーでのソートができなくなる
メーカー名とindex()を入れ替えると各メジャーでソートできるようになる
表示をindex()から順位に変える
//順位 ←SHIFT+ENTERで改行
index()
ディメンション/メジャーのラベル改名
それぞれのメジャーネームで色をつける
メジャーバリューを色に入れただけでは、可視化しているすべてのメジャー値で色付けになります。これでは、売上、利益、数量でまったく数値が異なるため意味がありません。
色に入れたメジャーバリューのメニューから「別々の凡例を使用」をクリックします。
それぞれのメジャーの値で色付けすることができました。
マークを□四角にして完成
ダッシュボード
利益 売上 数量のラベルはテキスト オブジェクトで配置します。幅を揃えるのにちょっと苦労します。
Tableauらしく 改良(案)
伝統の一覧表でエクセルを再現した後は、TableauらしいVizを提案してみましょう。売上と利益の関係がわかる散布図はいかがでしょうか。各メーカーのポジションが見えるようになります。
月報あるある VizのスナップショットをPDF等で残したい
VizのスナップショットをPDF等で残したいってニーズが結構あります。理由としては、以下のがあるようです。
・サーバーのデータは過去5年分しか残らない。まれに、10年前の月報を確認したいことがある。エクセル月報だとファイルを残しておけばいいんだけどなぁ。
・過去のデータが修正され、月報の数値が見た時点で異なることがある。
スナップショット1枚ならいいのですが、大抵は複数のフィルターを操作することになり、毎月、何十枚もスナップショットを撮ることになります。
そんな時、大活躍するのがtabcmdです。tabcmdはバッチ処理でVizとフィルターを指定してPDFを出力することができます。ただし、サーバー管理者によりTableau Cloud/Serverでtabcmdが許可されている必要があります。Tableau Publicではtabcmdが使えません。
PDFの一括ダウンロード方法はこちら。
Tableau Cloudでtabcmdを使ってPDF一括出力する @Seiji_suna
参考資料 一覧
たぶろう初心者の私がつまずいた点① メジャーバリューメジャーネーム ゆみまろ
【Tableau Tips】メジャーバリュー毎に色を設定する Tabjo Official