【Excel VBAからTableau Prepへ】データ処理の属人化を防ぐ3つのメリットと具体的手順

はじめに

日々のデータ処理作業でExcel VBAを活用されている方も多いのではないでしょうか?

実際に、以前までは私もVBAを頻繁に活用していました。何十行、何百行ものVBAコードと向き合い、エラーを一つずつ潰し、苦労して業務の自動化を行っていました。その結果、業務は自動化されたものの、処理内容は担当者以外にはわからず、属人化が深刻な問題になっていました。

しかし、Tableau Prepを使い始めてから2か月、データ処理作業の常識が変わりました。

そこで今回は、このTableau Prepの魅力を伝えたいと思い、Excel VBAでのデータ統合処理を例に挙げTableau Prepにて置き換えてみました。

その結果、VBAで書いていたコードがTableau Prepではこんなにシンプルになりました。

本記事では、その具体的な手順を、私が実際に感じたTableau Prepのメリットとともに紹介します。

そもそもTableau Prepって何?

Tableau Prepは、GUI(グラフィカルユーザーインターフェース)を使って簡単かつ直感的にデータ準備ができるツールです。複雑なコードを書く必要がなく、マウス操作だけでデータのクリーニング、整形、結合、集計といった一連の作業を「データフロー」として視覚的に構築できます。

Prepに触れて感じた3つのメリット

Tableau Prepを触り始めて、特に感動したのは以下の3点です。

1. 可視化の力で誰でも理解できる

VBAコードは書いた人にしかわからないことが多く、属人化の問題を常に抱えていました。仕様変更のたびにコードを読み解き、修正するのは時間も手間もかかります。しかし、Tableau Prepでは、データフローが視覚的に表示されるため、誰が見ても処理の全体像を瞬時に把握できます。どのファイルからどんなデータを取り込み、どのような加工をして、最終的にどう出力されるかが一目瞭然です。これにより、意図しないデータの変化やエラーも簡単に見つけることができます。

2. 多様なデータ形式にも対応

VBAはExcelの操作に特化しているため、Excel以外のCSVやデータベースのデータを扱うには、コードが複雑になる傾向があります。一方、Tableau Prepは、Excel、CSV、データベースなど、さまざまなデータ形式に標準で対応しています。

3. 勉強コストのいらない簡単な操作で柔軟なデータ整形が可能

VBAでは、複数のExcelファイルを統合(ユニオン)するだけでも、プログラミングの知識が必要になります。また、データの型を変更したり、不要な列を削除したりといった追加の整形作業も、すべてコードで記述しなければなりません。Tableau Prepなら、マウスでファイルをドラッグ&ドロップし、「ユニオン」のステップを追加するだけで統合が完了します。さらに、データプレビューを見ながら、数クリックでデータの整形やクリーニングを直感的に行えます。

今回使用したデータ

今回は、統合後のデータがExcelの行数限界に迫る約100万行となるケースを想定しました。使用したデータは、以下の5つの項目で構成された、1月から5月までの5つのExcelファイルです。各ファイルには、それぞれ約20万行のダミーデータが含まれています。

  • 項目:日付、商品ID、商品名、単価、販売数

実際の操作手順

今回は、指定したフォルダ内の複数Excelファイル(1〜5月分)を統合し、新しいファイルに出力する作業を例に、VBAでの処理をTableau Prepにて置き換えました。

VBAでのコード

VBAで処理を行う場合、例えば以下のようなコードを記述します。フォルダの指定、ファイルのループ処理、各ファイルのデータのコピー&ペースト、そして新しいシートへの貼り付けといった一連の動作を、すべてコードで正確に指示しなければなりません。このコードは初心者にとっては難易度が高く、処理内容を理解するのも一苦労です。

Tableau Prepでのアプローチ

Tableau Prepでは、コードを一切書かずに同じ処理が完了します。

    1.ファイルへの接続:Tableau Prepを開き、「接続」ペインから統合したいExcelファイルの1つを選択します。

ファイルの形式「Microsoft Excel」を選択します。

ダイアログが開かれるので、統合したいExcelファイルの1つを選択します。

ファイルが取り込まれると以下のような画面になります。

※Excelファイル内にシートが複数ある場合、テーブル部分で該当シートを選択してドラッグする必要があります。

    2.フォルダ選択:テーブルタブのソース部分にて、「複数のテーブルを結合」を選択し、統合したいファイルが格納されているフォルダを指定します(初めに選択したファイルが格納されているフォルダが選択済)。
    3.ワイルドカードユニオン:テーブルタブのファイルフィルター部分にて、統合したいファイル名を*を用いて指定します。Prepが自動でフォルダ内のファイルを認識し、ワイルドカードユニオンとして統合します。
    4.クリーニングステップの追加::+ボタンより、統合されたデータフローにクリーニングステップを追加してデータを整形します。
    5.出力ステップの追加:クリーニングステップに続いて出力ステップを追加し、ファイル形式や保存先を指定して出力します。

    6.データ出力の実行:参照よりファイル形式や保存先などの出力先の情報を選択し、フローの実行をします。(新規にExcelファイルを作成するなど、出力先にワークシートがない場合は新しいワークシートを作成してください)
    7.データ出力完了:以上でフローの実行が完了し、指定のフォルダに統合されたファイルが出力されます。

まとめ

VBAでは長くて複雑だったコードが、Tableau Prepではマウスでのクリック操作メインで完了してしまいました。処理内容も視覚的なフローで可視化されており、全体像を直感的に捉えることができます。

今回紹介した例からわかるように、Tableau Prepでは、VBAで手間がかかっていた定型的なデータ処理作業を、誰でも理解できる可視化された形で、より簡単に実現できるツールです。

最後に

VBAによるデータ処理のコード開発に加えて、コードの保守やメンテナンス、属人化に悩んでいるのであれば、ぜひ一度Tableau Prepを試してみてはいかがでしょうか。データ集計作業におけるあなたの悩みを解決し、より生産的な業務へと変えてくれるはずです。

今回はシンプルなデータ統合の例をご紹介しましたが、Tableau Prepを使えば、より複雑なデータの整形や結合も可能です。もしご要望があれば、より応用的なデータフローについてもブログでご紹介したいと思います。

また、「自社のデータ処理作業を効率化したい」「Tableau Prepの導入を検討したい」といったお悩みがありましたら、ぜひお気軽にご相談ください。あなたの会社のデータ活用をサポートさせていただきます!

ShtockData

お問い合わせフォーム

お問い合わせ項目を選択してください