Power BI で DAX 関数を使った「引き算」をマスターしよう!計算式の基本と活用方法をわかりやすく解説

データ分析をするうえで、足し算やかけ算、平均といった演算はよく使われますが、意外と忘れがちなのが「引き算(差分)」を上手に活用することです。引き算は売上やコストの差異分析、昨年比・前年同月比の増減など、多様なビジネスシーンで必要となる重要な計算です。この記事では、Power BI の DAX 関数を使った引き算の方法やよくある活用例、注意点をわかりやすくまとめました。


DAX での基本的な「引き算」の考え方

DAX では、シンプルに 「列名1 – 列名2」「メジャー1 – メジャー2」 と記述するだけで引き算が可能です。Excel と同様に演算子(-)を使います。例を挙げると、次のような場面で利用されることが多いです。

  • 売上利益計算:売上高 - 原価 = 利益
  • 昨年同期間との差額:今年の売上 - 昨年の売上 = 増減額
  • 在庫管理:入庫数 - 出庫数 = 現在庫量

特に「差」を分析することで、“いつ”“どこで”“どのように” パフォーマンスが変わったかを可視化でき、経営上の意思決定に大いに役立ちます。


基本的な例:列同士の引き算

1. 計算列 (Calculated Column) での引き算

テーブルに「売上 (SalesAmount)」と「原価 (CostAmount)」の列があり、同じ行(行単位)で「粗利益 (GrossProfit)」を求めたいケースを想定します。

  1. Power BI Desktop の [モデル] または [レポート] ビューで、該当テーブルを選択し、[列の追加] をクリック。
  2. 式入力バーに次のように記述します。
DAX
GrossProfit = 'SalesTable'[SalesAmount] - 'SalesTable'[CostAmount]
  • 同一テーブル内の列同士なので、通常の「-」演算子で引き算可能です。
  • 計算列では、テーブルの各行に対して計算が行われます。

2. メジャー (Measure) での引き算

より推奨される方法は、「メジャー」を使って集計した数値どうしを引き算するパターンです。レポート上で動的にフィルターやスライサーが変わっても、メジャーなら自動的に再計算されます。

例)売上合計メジャーと原価合計メジャーを差し引いて粗利益を計算する場合

DAX
Total Sales = SUM('SalesTable'[SalesAmount])
Total Cost = SUM('SalesTable'[CostAmount])

Gross Profit = [Total Sales] - [Total Cost]

  • [Total Sales] は SUM('SalesTable'[SalesAmount])
  • [Total Cost] は SUM('SalesTable'[CostAmount])
  • [Gross Profit] は 2 つのメジャーを引き算したもの

レポートで [Gross Profit] をグラフやカードビジュアルに追加すれば、地域や期間の切り替えに応じて粗利益が自動で変化します。


前年や他期間との差分を出す

売上比較や成長率の算出などで頻繁に使われるのが、「別期間との差分」です。Time Intelligence 関数(例: SAMEPERIODLASTYEAR, DATEADD など)と組み合わせて引き算するパターンが多いです。

例:前年同月比の差額

  1. Total Sales (今年の売上合計)のメジャーを作成
  2. Sales Last Year (前年売上合計)を作成
DAX
Sales Last Year =
CALCULATE(
[Total Sales],
SAMEPERIODLASTYEAR('Date'[Date])
)
  1. 差額 (Difference) メジャーを作成
DAX
Sales Difference (YoY) =
[Total Sales] - [Sales Last Year]

こうすることで、たとえば「2025 年 3 月」のフィルターがかかっている状態では、「2025 年 3 月の売上」と「2024 年 3 月の売上」の差をビジュアルに表示できるようになります。


ロールアップ単位が違う計算の場合

Power BI では、スライサーやビジュアルごとに集計レベル(年月、四半期、地域など)が動的に変化します。計算列やメジャーが「年単位の合計」と「月単位の合計」など異なるレベルの集計を比較する場合にも、基本的な引き算の考え方は同じです。ただし、フィルターコンテキストの仕組みを理解していないと、意図しない集計結果が出ることもあります。

ポイント

  • メジャー同士の引き算:コンテキストに応じて自動的に集計粒度が変わる。
  • 計算列同士の引き算:テーブルの行単位での演算なので、集計粒度よりもデータそのものの構造に依存。

もしも正しい値が得られない場合は、CALCULATE + FILTERALLSELECTED などでコンテキストを指定し直すと解決するケースが多いです。


「引き算」を活かすビジネスシーンの例

  1. 予算 vs. 実績の差額
    • Budget - Actual で差異を見える化し、赤字・黒字や目標未達状態をすぐ把握。
  2. 売上予測 vs. 実際の売上
    • 予想と実績の乖離を見ることで、需要予測の精度を改善。
  3. 在庫数・受注数の差
    • 在庫が受注に追いついているかどうかを常にモニタリング。
  4. 生産台数 vs. 不良品数
    • 稼働率や不良率をリアルタイムに把握し、製造工程の改善に役立てる。

引き算で注意すべきポイント

  • NULL や BLANK 値への対応
    列に NULL(または BLANK)が含まれる場合、期待した値が計算されないことがあります。IFERRORISBLANK などでエラーハンドリングを行うのがおすすめです。

    DAX
    Safe Subtraction =
    IF(
    ISBLANK(SUM('SalesTable'[Amount1])) || ISBLANK(SUM('SalesTable'[Amount2])),
    BLANK(),
    SUM('SalesTable'[Amount1]) - SUM('SalesTable'[Amount2])
    )
  • 負の値が想定されるかどうか
    「引き算の結果がマイナスになる」可能性がある場合、グラフやカードビジュアルでの表現をわかりやすく工夫する。赤文字で強調するなどの可視化手法が有用です。

  • フィルターコンテキストの理解
    同じメジャーでも、ページフィルターやスライサーが変われば計算結果も変化します。必要に応じて CALCULATE 関数でフィルターを固定化したり、ALL 系の関数で一部のフィルターを無視したりする設定が必要になるかもしれません。


もし困り事があるなら、まずは無料相談を

「売上と原価の差を出したいのに、うまくいかない」「前年同月比の差分が合わない」「フィルターやロールレベルセキュリティと絡めて計算したい」など、Power BI やデータ活用でお悩みの方はぜひお気軽にご相談ください。
もし困り事があるなら、まずは無料相談はこちら

コンサルサービスの詳細や成功事例なども合わせてご紹介いたします。
社内にデータ活用のノウハウや専門人材が十分いない場合でも、弊社が伴走しながら最短ルートで成果を出せるようサポートいたします。


セミナーで学ぶ!DAX 関数の実践スキル

📊 Power BI でより効率的なレポート作成を!

DAX 関数をマスターして、実務で使えるスキルを身につけませんか?
Power BIハンズオンセミナー中級編 では、短時間でデータモデリングのノウハウを学び、ビジネスに活かせるレポート作成を 実践形式 で習得できます。

  • 少人数制のため、定員になり次第締切!
    👉 セミナー詳細を今すぐチェック

📈 Power BI スキルを次のレベルへ!

DAX 関数 × データモデル設計 で、複雑なデータ分析やレポート作成もスムーズに!
Power BIハンズオンセミナー中級編 なら、実践形式で学べるから即戦力に。
業務効率をアップし、社内での評価を高めるチャンス!

  • 今こそスキルアップのタイミング!
    👉 詳細はこちら

DAX での引き算は基本的な演算ですが、実務レベルで活用するにはフィルターコンテキストの理解や、他の関数との組み合わせが欠かせません。セミナーに参加すれば、こうしたポイントを効率よく学ぶことができます。


まとめ

Power BI の DAX 関数で「引き算」を活用すると、売上やコスト、前年・前年同月との比較などを簡単に行え、ビジネス上の課題や改善点を素早く見つけやすくなります。シンプルな「-」演算子から、CALCULATESAMEPERIODLASTYEARDATEADD といった関数との組み合わせまで、さまざまなシーンで差異分析を実現できます。

ただし、フィルターコンテキストをはじめとする DAX の仕組みをしっかり理解していないと、思わぬ計算結果になったり、エラーが生じたりすることも。無料相談やハンズオンセミナーなどを上手に活用し、実務ですぐに役立つスキルを身につけてみてください。差分の分析を武器に、データドリブンな組織を目指しましょう。

関連記事

この記事へのコメントはありません。

カテゴリー

アーカイブ