Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
【続】Microsoft Power BI Desktop 入門講座 ー損益計算書作成編—
Rating: 4.6 out of 5(87 ratings)
1,152 students

【続】Microsoft Power BI Desktop 入門講座 ー損益計算書作成編—

売上だけのレポートに限界を感じたら──DAXとPower BIの癖を乗りこなし、“使える損益計算書”で実務に効く表現力を手に入れよう
Last updated 6/2025
Japanese
Japanese [Auto],

What you'll learn

  • Power BIを使って、損益計算書のテンプレートをそのまま再現し、項目ごとに正しい数値を表示する実務的なレポートを作成できるようになります
  • 売上データと費用データをDAXで統合し、1つの損益テーブルを構築するプロセスを学ぶことで、実務で役立つ集計スキルが身につきます。
  • IF、CALCULATE、SWITCH FORMATなど複数のDAX関数を組み合わせ、条件によって異なる数値を返す高度なDAX式を作成できるようになります
  • Power BIの列順やフィルター処理の“癖”を理解し、エラーを未然に防ぐためのデータ整備やテーブル設計のコツを習得できます
  • スライサーやマトリクスを活用して、年度別に損益計算書を比較表示し、経営分析に使えるダッシュボードを構築する技術が学べます

Course content

3 sections37 lectures2h 58m total length
  • 【スキップして構いません】学習効率を高めるUdemy動画の8つの機能10:26
  • 【ダウンロードあり】データの紹介6:36

    このレクチャーでは、これからPower BI上で損益計算書を作っていくわけなんですが、元データがどういったものか?を一緒に見ていきたいと思います。このレクチャーのダウンロードに"Building Income Statement by Power BI Desktop - data"というファイルを用意しました。こちらをダウンロードしていただきたいと思います。

    今回用意したデータは、ある会社の2021年から2024年までの損益計算書に関連するデータです。


    ファイルを開くと、ワークシートが5つありますね。日付データ、コストデータ、売上データ、PLテンプレ、そしてPL_2021-2024です。一つづつみていきましょう。


    まず、日付データ。2020年から2025年まで、一日毎の日付、年、そして月が用意されています。Power BIでモデルを組む時はこうした日付データを用意しておくと良いです。私は今回説明の便宜上先にエクセルで用意しましたが、作れる方はDAXで日付データテーブルを用意してもいいですね。


    次にコストデータです。費用科目、費用カテゴリー、日付データ、そしてコストデータとあります。経理に詳しい方であれば、費用項目は勘定科目と思っていただいてOKです。SAPなどのERPだと、こうした各項目にユニークな番号付けがされていますね。費用カテゴリーとは、費用項目の粒度を少し荒くしたものです。例えば、売上原価には、労務費、材料費、外注費とあります。これらをまとめて売上原価という1つのカテゴリーにくくっています。日付データはその費用が発生した日を表しています。説明の便宜上、発生日はすべて一日にしています。コストデータは、発生した費用そのものです。


    売上データを見ていきましょう。オーダー日、販売チャネル、そして売上データとなっています。オーダー日というのが、売上が発生した日です。売上データは、売上金額でいいですが、注目してほしいのは、販売チャネルです。この会社は収入減が卸売、インターネット、そして直営店と3つのチャネルがあるということです。今回作る損益計算書にはこの3つの内訳を表示したいと思っています。


    次に、PL テンプレを見ていきましょう。ここがこのコースの肝です。これまでのデータはどこにでもあります。このテンプレは、Power BI上で損益計算書を再現しようとする、このコース独自です。この損益計算書の形をPower BIで作っていきます。(スクロールしながら)売上があって、売上原価があり、売上総利益があります。そのあと費用が続いて、最後に営業利益があります。

    具体的には、これをPower BIのテーブルビジュアルないし、マトリクスビジュアルで表示し、各項目をいかに集計するか、です。

    3つの列があります。Orderというのは、順番です。PLの各項目を表示したい順番に並べるために入れています。これがないと、項目名のあいうえお順や、各項目に入る数字の大小順になってしまい形が崩れてしまいます。


    次の2つのPL項目と、PL項目(無加工)というのは実質同じものです。PL項目の方は、各項目の小計とその内訳が分かりやすいようにインデントを入れています。実際にユーザーが目にするのは、こちらです。PL項目(無加工)というのは、各項目の集計結果とこのテンプレの各項目を紐づけする時に使います。エクセルでいうところのVLOOKのようなことをして紐づけます。その時、こちらのユーザーに見せる方はインデントを入れています。データ上はインデントを入れているこれ(PL項目)とこれ(PL項目(無加工))は違うものです。ですので紐づけ用として、この無加工を用意しています。ただ、これは紐づけに使うだけで、ユーザーが目にするのは、このPL項目だけです。


    最後に、PL_2021-2024。これは、これまで見てきたデータを損益計算書の形で集計するとこうなる、といういわば答え合わせように用意しました。というのがこれだけ項目が多いと、エラーが発生していても、とりあえず数字が出ていたら、あっているのかあっていないのか分かりません。作ったPLがこのようになっていたら正解、という答え合わせのために用意しておきました。このワークシートは加工することはありません。


    以上、ここではこれから加工する元データファイルを見ていきました。次のレクチャーから、データをPower BIに読み込んでいきます。

  • Power BIへのデータの読み込み5:58

    このレクチャーでは、Power BIにデータを読み込んでいきます。

    Power BIを起動します。私は名前を Power BI PL Building として保存しておきます。この後、中断したいと思えば、ctl + s で保存すればOKです。

    データを読み込みましょう。データを取得、Excelブックです。ファイル格納位置より読み込みます。今回読み込むのは、前のレクチャーでは紹介したこれら5つのワークシートのうち、こちらのPL_2021-2024を除くすべてです。


    データの変換で、データ内容をチェックしておきましょう。クエリ名、データ型をチェックします。クエリ名としては、この名前で、ファイル内容を表していると思いますのでOKですと。データ型のチェックをします。日付データは日付、テキストはテキスト、数値データは数値になっていてよさそうです。


    今みているレポートにはありませんが、たまにPower BIでデータを読み込むと全くデータが入っていない範囲まで読み込んでしまっている場合があります。このあたりにもう何列かあって、データが入っていないと。ブランクの範囲も読み込んでしまっている状態です。もしそういう列が入っていたら、右クリックで削除していただければと思います。



    では、これで閉じて適用を押します。データ部分に、さきほどのクエリが登場し、Power BIにデータが読み込まれました。

    ここでは簡単にモデルも組んでおきたいと思います。モデルビューに行きます。日付データを一番上、売上データとコストデータを真ん中、そして今は使わないPLテンプレを一番下に持っていきます。日付データの日付から、売上データのオーダー日をつなぎます。新しいリレーションシップということで、カーディナリティも1対多でOKですね。保存とします。同じく日付データと、コストデータもつなぎます。はい。いいですね。


    (モデルビューのまま)

    以上、このレクチャーではデータの読み込みと簡単なリレーションシップをつなぎました。次のレクチャーからは、Power BIで損益計算書を作る際にポイントとなる、今はこうしてバラバラである、売上データと費用データを一つのテーブルにまとめるプロセスを見ていきます。


  • 売上データとコストデータの統合 -概要説明-5:39

    このレクチャーからは、売上データとコストデータを統合していきます。ここでは、具体的な操作に入る前に、なぜ統合しなければならないのか、と、どう統合するのかをお話します。

    (レポートビュー)このコースの目的というのは、Power BI上でPL、損益計算書を作ることです。もっと具体的に言うと(実際に示す)PLテンプレをテーブルで表示して(OrderとPL項目を示す)、ここにPL項目に対応する数字を表示します。


    この時、ここに落とす数字というのは、売上もコストも含めて1つのメジャーになります。(仮に売上データの売上データを落とす)こんな感じです。売上もコストもこの1つのメジャーに入っている必要があります。そうでなく、売上とコスト別々でいいんだ、ということでコストデータは別にしたとしたら(仮にコストデータのコストデータを落とす)こんな感じで2列になってしまいます。これだと、損益計算書として見た目がよくないです。


    というわけで、売上とコストを1つのメジャーにまとめたいわけですが、現在は売上データとコストデータは別々の表になっています。(テーブルビューにいく)しかも形式も微妙に違います。

    こうしたジレンマを解決するために、このコースでは、売上データとコストデータを統合する表、テーブルとも言います、これを作ります。その上で、その統合テーブルから、さらにメジャーを作ります。このメジャーには、売上データもコストデータも入っているので、

    (レポートビュー)それをここに落とせば、PL項目に対応した数字が1列で出てくるようになると、こういうわけです。


    さて、売上データとコストデータのテーブル統合ですが、いくつかのステップを経ます。みなさんがご自身の実務で応用する時、どうデータを統合するのかも、同じように考えていただければと思います。

    まず、統合するにあたり、全く新しいテーブルを作るよりも、どちらかのテーブルにもう片方をつける方が実務では、現実的です。(テーブルビュー・PLテンプレ)今回はこのテンプレのようなPLを作りたいと。


    この時、コストデータを見ると、もうそのままPLテンプレに当てはめられそうです。PL項目は、コストデータの費用項目が対応しています。テンプレの売上原価合計、であったり、その他費用合計というのは、費用カテゴリーが対応できそうです。費用カテゴリーは、売上原価の他にはたくさん項目がありますが、これらはテンプレのその他経費合計でまとめられそうです。


    すると、今、コストデータは4列あります。これを統合テーブルのベースにしたいと。でも、今、売上データを見ると、3列しかありません。販売チャネルは、テンプレのPL項目にあたりそうですね。しかし、コストデータでいうところの、費用カテゴリーに該当するものが、この売上データにはありません。列数があっていないので、このまま売上データとコストデータを統合することはできません。


    では、どうするか?


    まず、売上データのテーブルをコストテーブルの形に合わせます。具体的には、今、3列のところに、費用テーブルでいうところの費用カテゴリーに該当する1列を足します。

    そうして形式を合わせた売上テーブルをコストテーブルと統合し、1つのテーブルにします。


    こうした2ステップで、形式の異なる売上データとコストデータを統合します。


    具体的にPower BIでどうするかは次のレクチャーから説明していきます。

    以上、このレクチャーでは、売上データとコストデータを統合する背景とそのやり方を説明しました。次のレクチャーでは、実際のPower BIの操作に入っていきます。

  • 売上データとコストデータの統合 -DAXによるテーブル作成-4:38

    このレクチャーでは、売上データとコストデータを統合する表、テーブルを作っていきます。

    順番としては、(テーブルビュー)まず、こちらの売上データを加工して、コストデータの形式に合わせたテーブルをDAXで作ります。形式を合わせるとは、具体的には売上データが今、3列のところをコストデータと同様に4列にすることです。

    形式を合わせたところで、コストデータに、形式を合わせて4列にした売上データを統合した新たな表、テーブルを作ります。


    では、まずは、売上データを加工した4列の表を作っていきます。この表の名前は、「チャネル別売上」としたいと思います。DAX式でテーブルを作ります。

    こちらのテーブルビューの、リボンのテーブルツールで、新しいテーブルをクリック。テーブル名を「チャネル別売上」とします。SUMMRIZEというDAX式を使います。このDAXは、元の表、多くの場合大きな表をサマライズする、省略する、小さくする時に使えます。

    まずは、DAX式を入力してしまいます。そのあとで、解説します。

    チャネル別売上 =

    SUMMARIZE('売上データ_2021-2024', '売上データ_2021-2024'[販売チャネル], '売上データ_2021-2024'[オーダー日],

         "カテゴリー", "売上",

         "売上金額", SUM('売上データ_2021-2024'[売上データ]))


    SUMMRIZE関数は、元となるテーブルをまず指定します。今回は売上データです。次に持ってくるデータを指定します。販売チャネル、そしてオーダー日はそのままもってきました。また、この関数は新たな列も用意できます。その場合はまず、列名を決めてそこに入る内容を指定します。一つ飛ばして、まず売上金額として、売上データを持ってきました。これはいいですよね。なにせ売上のテーブルなので、売上が要ります。ここの意味は、ダブルクオテーションで囲っている、売上金額というタイトルの列で、その内容は売上データをSUMしたものだ、という意味です。


    次がポイントです。さきほど飛ばしたここ。このカテゴリーというオリジナル列でその中身はテキストで売上を入れるんだ、というのを示しています。


    この列が今、(売上データのテーブルをみせる)売上テーブルで欠けている4列目です。4列目を作ることこそが、ここでやりたかったことです。さきほどお伝えしたように、カテゴリーは売上としました。できあがった表でも、売上って入ってます。

    こうして、(コストテーブルを見せる)コストテーブルの形式に、売上テーブルを加工した、チャネル別売上ができました。

    データ型を整えておきます。オーダー日は、時間まで要らないので、データ型を日付にします。販売チャネル、カテゴリーはテキストで良いとして、売上金額は数値データですが、わかりやすいようにコンマを入れておきます。はい。これでOKです。


    以上、このレクチャーでは売上データとコストデータを統合する最初のステップとして、売上データを加工したチャネル別売上テーブルを作成しました。

    次のレクチャーではこうして作ったチャネル別売上をコストデータと統合していきます。

  • 参考:'チャネル別売上' のDAX式0:22
  • 売上データとコストデータの統合 -DAXによるテーブル統合-7:12

    このレクチャーでは、売上データとコストデータを統合していきます。

    流れとしては、(テーブルビュー)コストデータと、前のレクチャーで作ったチャネル別売上をUNIONというDAXで統合した新たなテーブルを作ります。

    統合の前に、実務でよくある失敗を示したいと思います。ここは見ていただくだけでいいです。前のレクチャーにて、チャネル別売上というテーブルを作りましたと。そして、このテーブルは4列あり、各列の内容は、統合先であるコストデータとあってますよね。

    じゃあ、ってことでテーブルツールの新しいテーブルで

    テーブル = UNION('コストデータ_2021-2024','チャネル別売上')

    UNIONというDAXでこの2つのテーブルをこのまま統合するとどうなるか?UNIONで必要なのは、統合する2つのテーブルだけなので、これで統合できます。エンターとします。一見すると、問題なく統合できています。でも、費用カテゴリーをみると、日付データらしきものが入っています。日付データに売上となっています。なんかうまくいっていないようです。

    なぜ、こういうことになっているかというと、(テーブルビュー)コストデータの列の並びと、チャネル別売上の列の並びが違うからです。UNIONをそのまま使うと、既存のテーブルの列の並びでそのまま統合するためにこうした現象が起こります。実務でこれが発生すると、やっかいです。さきほどのように一瞬何も問題ないように見えるので、プロセスが進んだ後になって「何か変だ」となります。そうすると、プロセスを後戻りしなければならないので、時間のロスになります。

    ですので、UNIONを使う時にこうした列順序を合わせる工夫を一つかませます。さきほど出てきたSUMMRIZEを使います。

    このテーブルは削除します。

    では、作っていきます。コストデータのスクショをとり、順番を確認できるようにします。

    テーブルツールで新しいテーブルをクリック。そして、損益計算書テーブルという名前をつけます。
    UNIONと入れ、まず基本となるコストテーブルを指定します。ここまではさきほどと変わりません。


    UNION('コストデータ_2021-2024',

          SUMMARIZE('チャネル別売上',

               'チャネル別売上'[販売チャネル], 'チャネル別売上'[カテゴリー],'チャネル別売上'[オーダー日],'チャネル別売上'[売上金額]))


    次に統合するデータであるチャネル別売上を持ってくるのですが、一工夫いれます。ここでSUMMRIZEを使います。そしてチャネル別売上。SUMMRIZEを使って、チャネル別売上の列の順番をここで変えてしまうわけです。

    まず、費用項目にあたるもの。ここでは、販売チャネルです。次に、カテゴリー。あとは日付データと、金額データの順番ですね。


    そうすると、形式をそろえたまま統合されたテーブルが完成します。さきほどのように、日付データに売上とか入ってないですね。

    少しデータを整えます。統合したテーブルのヘッダーは、元となる、(DAX式の最初の引数を示す)基本となるデータのものをとります。ですので、こうして統合した表のヘッダーが、費用...とはじまっています。費用テーブルを元にしたので。


    でも、もうこのテーブルには費用だけではなく売上データも統合されています。ですので、費用項目ではなく、項目、費用カテゴリーではなくカテゴリーとします。日付データは時間まではいらないのでデータ型を日付に変えます。コストデータももはやコストだけではないので、データとした上でコンマを入れておきます。これでいいですね。

    以上、このレクチャーでは、売上データとコストデータを統合した損益計算書テーブルの作成を見ていきました。(モデルビューを見せる)次のレクチャーでは、モデルビューにて、ここまで使ったテーブルの整理をしていきます。

  • 参考:'損益計算書テーブル' のDAX式0:21
  • 売上データとコストデータの統合 -モデルビューの整理-4:49

    このレクチャーでは、売上データとコストデータの統合のまとめをします。


    モデルビューにいきます。これまでのレクチャーで、損益計算書テーブルを作成しました。この損益計算書テーブルより、このあとPower BIによる加工を進めていきます。損益計算書テーブルにも日付データがあるので、日付データと紐づけておきます。あくまでPower BIでモデルを組む時、使う日付データは個々のテーブルの日付データではなく、独立して作ったベースとなる日付データを使うのが鉄則です。


    チャネル別売上は、損益計算書テーブルを作る過程で作ったものですね。今後使わないので、下の方に下げておきます。


    レポートビューにいきます。データ部分にはいくつかクエリーがありますね。このうち、データとして使うのは、こちらの損益計算書テーブルです。ここには、売上データもコストデータもまとめて入っていますので。そのほか使うのは、日付データと、PLテンプレです。チャネル別売上、コストデータ、そして売上データというのはもう使いません。ごちゃごちゃするので、非表示にしましょう。


    モデルビューにいきます。各クエリの目玉ボタンを押すと非表示になります。ここで注意なのは、整理整頓の意味で非表示にするだけで、削除するわけではないです。この損益計算書テーブルは、売上データとコストデータ、そしてチャネル別売上を経由して作られているので、これらが削除させると、損益計算書テーブルも壊れてしまいます。


    レポートビューにいって、データをみてみます。クエリがすっきり整理されています。


    さて、みなさんの中にはこう思った方もいるかもしれません。損益計算書テーブルをPower BIに取り込む前に、最初からエクセルで用意すれば、これまでのSUMMRIZEや、UNIONでごちゃごちゃ表作らなくてもそのままつかえるんじゃね_と。

    まったくその通りです。実はある時期まで私もそうしていました。しかし、それをやるとアップデートの度にエクセルで加工する必要が出てきます。


    損益計算書ってそんなに頻繁にアップデートしないでしょ、と思われるかも知れませんし、そういう方も多いでしょう。ただ、私の場合、月次や年次の決算で、損益計算書が出来上がる過程で都度、Power BIでチェックしていました。DAXをこれまでのレクチャーのように組んでおけば、元データが変わった次第で、読み込みなおせば自動でアップデートできます。作ったPLは、過去のPLと比較ができるようにしているため、この比較もこのコースの後半でやりますが、決算のプロセスで随時チェックし、過去のデータと比べておかしな点はないか?タイムリーきずくことができます。また、変な部分ができた時には、経理のみなさんに、ここ変だけど、この後なにかデータ入る?と早い段階で指摘ができるようになります。


    こういうこともあり、今回このコースでは損益計算書テーブルは、エクセルで用意せず、DAXで作ったわけです。以上、ここまでで、Power BIで損益計算書を組んでいく前の、データの下準備を行いました。

    次からは、いよいよ損益計算書を組んでいくプロセスに入っていきます。

Requirements

  • Power BI DesktopがインストールされたWindowsパソコンをご用意ください
  • Power BIの基本操作に触れたことのある方を想定しており、完全な初心者にはやや難易度が高い内容です
  • DAXについての予備知識は不要で、必要に応じて調べながら学習していただけます。ただ、個々のDAXを掘り下げて解説することはしていません

Description

Power BIでレポートを作っていると、ふと気づくことはありませんか?

「……売上ばかり出してるな」
「損益計算書みたいな、実務っぽいレポートって作れないのかな?」

本講座は、そんな“次の一歩”を踏み出したいあなたのための、実務直結・DAX実践型Power BI講座です。
Power BIの「癖」と向き合いながら、売上と費用を1つのテーブルにまとめ、テンプレートに沿って損益計算書(PL)を動的に再現していきます。


本コースで学べること


  • 売上と費用という性質の異なるデータを、Power BI上で統合するプロセス

  • SUMMARIZE、UNION、CALCULATE、FILTER、SWITCH TRUEなどのDAX式を活用した、実務的なデータ処理の組み方

  • PLテンプレートに沿って、各項目に数値を正しく表示させる動的なメジャー構築

  • Power BIのレポートビューで損益計算書を表現するための書式設定とテクニック

  • マトリクスを使って、年度別の比較レポートを作る実務的なダッシュボード作成スキル

  • 「売上だけのレポート」から脱却し、レポート表現のレパートリー


こんな方におすすめです

  • 経理・財務・FP&Aなど、損益計算書に日常的に触れている方

  • Power BIを業務で使い始め、さらにレポートの幅を広げたいと感じている方

  • DAXを“何となく”ではなく、目的を持って使いこなしたい方

  • 見栄えより「使える」「チェックに強い」レポートを重視したい方

  • Excelだけでは難しかったPLの自動更新や比較を、Power BIで実現したい方


受講前にご確認ください

  • Power BI DesktopがインストールされたWindowsパソコンが必要です

  • 本講座は、Power BIの基本操作(データの読み込み、テーブルの確認など)を一通り触ったことがある方向けに構成しています

  • 完全な初心者の方は、入門編講座の受講を先におすすめします


講師よりひとこと

私自身、実務でPower BIを使う中で、「もっとこういう損益計算書があったら…」「このデータ、PLに落として見たい…」と考える機会が何度もありました。
この講座は、そんな「現場感覚」に徹底的に寄り添った内容になっています。作って終わりではなく、使って意味がある、そんなPLレポートを一緒に作っていきましょう!

Who this course is for:

  • 経理・財務部門でPower BIを活用したレポート作成を目指す方に最適です
  • FP&Aや経営企画で、損益管理を効率化したいビジネスパーソンにおすすめです
  • Power BIにおけるレポートの表現方法の幅を広げたい方に向いています
  • 実務でPL(損益計算書)を扱い、日々の分析に課題を感じている方に役立ちます
  • DAXを実務的な目的で学びたい方、複雑な式に挑戦したい方にもフィットします
  • 見栄えより「使えるレポート」を重視する、実践志向の学習者におすすめです