UnWeeklyAlteryxTips#115 テーブルツールの出力を直接書き換えてカラム名を変更する

Alteryx

AlteryxのTipsを不定期にお届けしている週間(?)AlteryxTipsです。

最近ずっとレポーティングツール関連のTipsばかりになってしまっていますが、深堀りすればするほど意外といじりがいのあるものだということがわかってきた気がします。

タイトルが異なる表を一つのExcelシートに出力したいですか?

今回のお題はここに記載のとおりです。例えば、以下のような表を作りたいとします。

ちなみに、元データは以下のような表とします。

これを出力する場合、複数のアプローチがあると思いますが、真っ先に思いつくのは、バッチマクロで作成することでしょうか?バッチマクロの場合、各実行ごとにカラム名を書き換えながらテーブル化することで実現できます。

実際のバッチマクロの中身は以下のとおりです。

気をつける点は、セレクトツールでは何かしら設定(例えば位置変更やリネーム)を行ったカラムのみがアクションツールの候補として選択できるようになることでしょうか。

また、このマクロ内ではフィルタを使っていませんが、バッチマクロを設定する時に「グループ化」を設定する必要があります(個人的に使う場合はフィルタを入れないことが多いですが、一般的に使ってもらうマクロを作る場合は設定忘れの可能性が非常に高いため、マクロ内にフィルタを入れることをおすすめします)。

さて、今回の本題はバッチマクロではありません。

テーブルツールの出力を直接書き換えるテクニック

入力したデータに対してそのままテーブルツールを適用するとどうなるのでしょうか?設定としては以下のようになります。ここではグループ化オプションに「Area」を設定し、エリアごとにテーブルが作成されるように設定しています。

結果は以下のとおりです。

ただし、まだこの時点では、カラム名が「Store Code」のままです。

今までのWeeklyTipsでも紹介しましたが、レポートスニペット(Tableという名称のカラムの中身)はPCXMLフォーマットで書かれた単なるテキストです。

つまり、フォーミュラツールで書き換えることができます。以下のようにフォーミュラツールを設定してみましょう。

これを行うと、以下のようにレポートスニペットではなくなるため、レンダリングツールでレポートとして出力できません(事前にレンダリングツールで出力項目として選んでおけばそのまま出力できてはしいます)。

これをレポートスニペットに直すためには、以下のようにレポートテキストツールのエキスパートモードを使うことができます。

これで以下のようになります。

閲覧ツールで見ると、ちゃんとできてますね!

まとめ

  • バッチマクロでやらないといけないことを、さくっとなしで行う方法をご紹介しました
  • レポートスニペットをいじってそれをまたレポートスニペットに戻すところがポイントです
  • 意外と役立つレポートテキストツール。レポーティングツールで複雑なことをする時は欠かせない非常に重要なツールです。

コメント

タイトルとURLをコピーしました