2025.04.07

動的ゾーン表示とパラメータアクションにより段階的にワークシートを表示/非表示する

動的ゾーン表示とはTableauのバージョン2022.3で追加された機能で、
ダッシュボード内のシートやオブジェクトを、パラメータの値や項目の選択結果に基づいて表示したり非表示にしたりすることができます。
ワークシート単位ではなく、オブジェクト単位でコントロールできるため全体的に動きのあるダッシュボードを作成することができます。
今回は動的ゾーン表示に加えパラメータアクションでパラメータに渡す値をコントロールすることで、初期表示は大分類だけのところ、
大分類を選択するとそれに関連する中分類が、さらに中分類を選択するとそれに関連する小分類が表示されるといったようなマトリョーシカ的な挙動をするダッシュボードの作成方法をご紹介します。

まず、完成イメージをご紹介します。
今回は「地域」→「都道府県」→「市区町村」という分類で、ボタンを押すと次の段が表示されるようにしていきます。
①が何も選択していない初期の状態で、地域だけが表示されています。ここで試しに四国を選択すると②のように四国に関連した都道府県が表示されます。さらに香川県を選択すると③のように香川県に関連した市区町村が表示されます。

本ブログではTableauインストール時に同梱されているサンプルスーパーストアのデータを使用して説明します。
基本的に実装方法をご紹介していきますので、細かいデザインや書式設定の部分は省略します。

①表示/非表示にするワークシートを作成する

以下の計算フィールドを作成します。

マークのテキストへ作成した計算フィールドをドラックアンドドロップします。

テキストを編集し任意の文言を入力します。

同じように配置するワークシート分作成していきます。
後で分からなくなってしまわないように、ワークシート名を必ず変更しておくようにしましょう。

②ダッシュボードへで作成したワークシートを配置する

画面下のワークシートタブからダッシュボードをクリックし、新しいダッシュボードを作成します。

水平コンテナや垂直コンテナを活用し、分類ごとに配置していきます。
参考までに、四国の分類について本ブログでは以下のように配置してみました。
※今回使用したサンプルスーパーストアは四国の都道府県データを3県しか保有していないため、四国すべての県を作成していません。

③パラメーターを作成する

ワークシートの表示/非表示を切り替えるためのパラメーターを作成します。

許容値はリストを選択し、0~8を入力します。
ここでは0=非表示、1=北海道、2=東北地方、3=中部地方、4=関東地方、5=関西地方、6=中国地方、7=四国地方、8=九州と考えてください。
以降このパラメーターのことを「地域パラメーター」と表記します。

④パラメーターに渡す値を作成する

今回地域パラメーターのデータ型を文字列で作成したので、シングルクォーテーションで囲っています。
0はどの地域も該当しないので、0以外の1~8で計算フィールドを作成してください。

地域パラメーターの数字に対応する地域のワークシートの詳細へ、それぞれ作成した計算フィールドをドラックアンドドロップします。

⑤パラメーターアクションを設定する

②で作成したダッシュボードへ戻り、アクションの追加からパラメーターの変更を選択します。

ソースシートは②で作成したダッシュボードの中から、地域のうちどれか1つのワークシートにします。
ターゲットパラメーターは地域パラメーターを選択します。
ソースフィールドはソースシートに対応して、④で作成・配置したフィールドが選択できるようになっているはずです。
ワークシートの選択を解除した時には表示をクリアしたいので、「選択項目をクリアした結果」を「値の設定」へチェックし「0」を入力します。

1段目の地域の数だけ同じようにパラメーターアクションを作成します。

ここで一度テストをしておきます。
ダッシュボードに配置してあるワークシートをどれでもいいのでクリックし、右側に出てきた「▼」をクリックします。
メニューが表示されるので、パラメーターをクリックし地域パラメーターを選択します。
画面のどこかにパラメーターのタブが出現していればよいです。

地域のワークシートをクリックしたときに、1~8の任意の数字にパラメーターの値が切り替わっていれば成功です。
選択したワークシートをもう一度クリックした時に値が「0」になることも確認しておきましょう。

⑥動的ゾーン表示によるワークシートの表示/非表示を設定する

動的ゾーン表示用に計算フィールドを作成します。この計算フィールドも切り替える地域の数だけ作成します。

地域に対応した都道府県が入っているコンテナを選択します。
画面左側のサイドバーからレイアウトタブを選択します。
「値を使用して表示状態を制御する」にチェックを入れ、直下のタブから作成した計算フィールドを選択します。

制御の対象の地域を選択した状態だと該当のコンテナ(都道府県シート)が表示され、選択をクリアしたパラメーターが「0」の状態で非表示になれば成功です。
このままの状態だと2段目の都道府県を選択した時に、地域パラメーターが「0」になってしまい都道府県のコンテナが非表示になってしまうので、
都道府県を選択した時もパラメーターに値を渡すように設定します。
都道府県ワークシートに対しても④⑤と同じ手順を実施します。
⑤の手順では該当地域に対するパラメーターの編集から、ソースシートのチェックに都道府県を追加するだけでよいです。
いずれかの地域→都道府県をクリックし、都道府県をクリックしたときに2段目のワークシートが非表示にならないことを確認しましょう。

⑦3段目にもパラメーターアクション・動的ゾーン表示を適応する

実施手順は③~⑦とほぼ同じになるので、改めて確認しながら進めていきましょう。

(③)ワークシートの表示/非表示を切り替えるためのパラメーターを作成します。

許容値はリストを選択し、0~3を入力します。
ここでは0=非表示、1=香川県、2=愛媛県、3=徳島県と考えてください。(ここでは四国の場合のため、都道府県の数だけリストを増やしてください)
以降このパラメーターのことを「都道府県パラメーター」と表記します。

(④)パラメーターに渡す値を配置する

1~8の計算フィールドは複数作成する必要はなく、使いまわして問題ありません。
都道府県パラメーターの数字に対応する都道府県のワークシートの詳細へ、計算フィールドをドラックアンドドロップします。

(⑤)パラメーターアクションを設定する

②で作成したダッシュボードへ戻り、アクションの追加からパラメーターの変更を選択します。

ソースシートは②で作成したダッシュボードの中から、都道府県のうちどれか1つのワークシートにします。
ターゲットパラメーターは都道府県パラメーターを選択します。
「選択項目をクリアした結果」を「値の設定」へチェックし「0」を入力します。

2段目の都道府県の数だけ同じようにパラメーターアクションを作成します。

ここでもテストをしておきましょう。
都道府県パラメーターをダッシュボード上に表示させます。
都道府県のワークシートをクリックしたときに、1~3の任意の数字にパラメーターの値が切り替わっていれば成功です。
選択したワークシートをもう一度クリックした時に値が「0」になることも確認しておきましょう。

(⑥)動的ゾーン表示によるワークシートの表示/非表示を設定する

動的ゾーン表示用に計算フィールドを作成します。

都道府県に対応した市区町村が入っているコンテナ(もしくはワークシート)を選択し、レイアウトタブから「値を使用して表示状態を制御する」を設定します。

ここでも3段目の市区町村を選択した時に、都道府県パラメーターが「0」になってしまい3段目のワークシートが非表示になってしまうので、
市区町村を選択した時も都道府県パラメーターに値を渡すようにパラメーターアクションを作成します。

このままだと市区町村を選択した時に地域パラメーターが「0」になってしまい、2段目が非表示になります。
3段目をただ表示/非表示させるだけであったり、選択することで別のページへ遷移するだけであれば問題はありません。
ワークシートを選択することにより、画面遷移せずフィルターやアクションなどの機能を実行するということであれば、
市区町村を選択した時に地域パラメーターに値を渡すようにパラメーターアクションを作成しましょう。

いかがでしたでしょうか。以上、動的ゾーン表示とパラメータアクションにより段階的にワークシートを表示/非表示する方法のご紹介でした。

RECRUIT

エンジニアが主役となり、未来を明るく照らしていく100年企業へ。

採用情報へ