さて、今日はパワークエリでデータ照合する方法を考えていたいと思います。
といっても、この記事では設計編と題して書きますので実際のやり方はまたの機会に譲ります。
では早速考えていきましょう。
前提条件
まず、どんな業務フローを想定しているかですが、こんな場面を想定しています。
- 日々の売上データを販売管理システムにインプット
- 請求締め日で請求額を算定
- 先方から入手した支払明細データ(検収データ)と当方売上データとの照合
- 売上訂正の要否を確認
- 必要に応じて売上訂正
ここで一番時間を取られるのが③先方から入手したデータとの照合作業です。
これを、パワークエリで省力化したいというのが今回の目的です。
パワークエリで出来ること
パワークエリで出来ること、というかやりたいことはデータ整形です。
売上データと検収データは、もちろん形式が異なりますので、これを比較・照合するためにはデータの形式を同じにしないといけません。
そのステップを考察してみます。
データの取得
まずはそれぞれのデータを取得します。
その際には相対パス化するなどしてファイルパスを変更しやすいようにしておくと便利なのでしょうね。
データ整形
次に取り込んだそれぞれのデータを必要な項目に整形します。
整形する目的は、両者のデータを結合するためです。
データ結合するためには、両方のデータの列数・列タイトルを統一する必要があります。
その観点から最低限必要なデータはこの通りです。
- データ作成区分
- 日付
- 伝票番号
- 売上金額(先方仕入金額)
最低限必要な項目はこの4つとしておきましょう。
ちなみに、両方の元データにはデータ作成システムについての列はありませんので、例えば「データ作成区分列」を作成します。
このように、カスタム列の追加でデータ作成区分列を作成します。
データ結合
データ項目が統一できたら次はデータ結合です。
これで当方データ・先方データからひとつのデータテーブルが出来上がります。
ここまででパワークエリの作業は終了です。
ピボットテーブルでの作業
パワークエリで両方のデータを合体するとこまでできましたので、あとはこれをどのように調理するかです。
ここはピボットテーブルが便利ですね。
パワークエリで作ったデータテーブルを参照するピボットテーブルを挿入します。
そして、こんな感じで設計します。
- フィルター:なし
- 行(タテ):日付、伝票番号
- 列(ヨコ):データ作成区分
- 値 :売上金額
これで、日付別の差額を取れば、データ相違原因を特定していく、という感じです。
おわりに
大体、こんな感じで妄想してみました。
ちなみにここから考えられる問題点は、当方の売上計上日(出荷日)と先方の仕入れ計上日(入荷・検収日)がずれる場合です。
このずれが生じるのは問題ないとしても、これ以外で生じる差異をどのように特定していくのかが課題となるでしょうね。
それについても次回、実際に作りながら考えてみたいと思います。