1. はじめに
業務シフトや稼働時間、稼働日数など、24 時間を超える長時間のデータを管理・分析したいケースは意外と多いです。しかし、通常の「hh:mm:ss」形式の時間データでは、24 時間を超えると 日付が切り替わってしまう ため、思わぬトラブルが起こることも。
本記事では、Power BI で 24 時間を超える時間データを正しく扱う方法をわかりやすくご紹介します。あわせて、100 万行を超える大規模 CSV データを取り込む際の注意点や、困り事を解決する無料相談・セミナー情報もまとめました。
2. 24 時間以上の時間データを扱うときの課題
-
標準の「時刻型」では 24 時間を超えると切り捨てられる
-
Power BI の「時刻」データ型は 0:00:00 から 23:59:59 の範囲で認識されるため、24 時間を超える値は 翌日に繰り越される 形になってしまいます。
-
-
合計時間の計算がうまくいかない
-
たとえば「作業時間が 25 時間」でも、単純に時刻型で計算すると 1 時間として表示されるなど、正しい累計が出にくいトラブルが発生します。
-
-
テキストとしての管理は集計に不向き
-
24 時間以上の時間を無理やり文字列で管理していると、合計や平均を出すたびに 別途変換 が必要で手間が増える場合があります。
-
3. Power BI で 24 時間以上を扱うための方法
3-1. 「Duration(持続時間)」データ型を使う(Power Query)
-
Power Query で「変換」→「データ型:Duration」
-
CSV などのインポート時に、24 時間以上の値が「テキスト」や「数値」で入っている場合、まずは Power Query で「Duration」型に変換するのがおすすめ。
-
Duration 型では日数・時間・分・秒といった形で扱えるため、24 時間を超えた時間も正しく保持できます。
-
-
「日」「時間」「分」「秒」へ分割して表示
-
必要に応じて、「Add Columns(列の追加)」→「From Duration」で、Duration を日・時間・分・秒などの要素に分割して管理可能。
-
例: 1.2 日の Duration なら、
1 日と 4.8 時間
として分割表示できる。
-
3-2. DAX で独自に合計・書式を制御する
-
合計時間(時間単位)のメジャーを作成
DAXTotalHours =
SUMX(
TableName,
TableName[DurationColumn] * 24
)
-
Duration 型は「1.0 = 1 日」として扱われるため、「×24」で時間換算ができます。
-
これで合計時間(24 時間超でも可)を数値として保持できます。
-
-
書式を工夫して表示
-
Power BI の書式設定では、通常の「時刻型」だと 24 時間を超えて表示できないため、カスタム書式や 文字列連結 を駆使して「
xx日 xx時間 xx分
」などと表示する方法が有効です。
-
3-3. テキスト形式を使う場合の注意点
-
どうしてもテキスト形式で「31:00:00」のように管理したい場合、集計のたびに変換が必要になるため、パフォーマンスやメンテナンス性が低下する傾向があります。
-
長時間を頻繁に集計するのであれば、Duration 型 + DAX の組み合わせが最もスムーズです。
4. 100 万行を超える大規模データでも使えるコツ
-
Power Query で不要列を削除し、必要データのみ残す
-
特に 24 時間以上の時間列がある場合、テキスト変換 → Duration の処理を大量行で行うと負荷が高いため、不要な列を先に削除してから変換するとパフォーマンスを改善できます。
-
-
DirectQuery の検討
-
どうしてもデータ量が多い場合、インポートモードではメモリがひっ迫することも。ビジネス要件に応じて DirectQuery を利用することで、元データベースに対してリアルタイムにクエリを投げる構成も検討しましょう。
-
-
要約テーブルの活用
-
日単位、週単位、月単位など グループ化した要約テーブル を作成して可視化に利用し、必要に応じてドリルダウンで詳細を確認するのが効率的です。
-
5. もし困り事があるなら、まずは無料相談
「24 時間以上の作業時間を正しく可視化したい」「大量行データで Power BI が重くなる」「CSV の複雑な加工をどうすればいい?」など、Power BI や Power Automate でのお悩みがあればお気軽にご相談ください。
-
もし困り事があるなら、まずは無料相談はこちら
コンサルサービスの詳細や成功事例もあわせてご案内します。社内にデータ活用の専門知識が不足していても、弊社が伴走し 最短ルートで成果 を上げられるようサポートいたします。
6. セミナーで学ぶ!DAX 関数とデータ活用
📊 Power BI ハンズオンセミナー初級編
-
レポート作成の基本とデータモデリングを学び、短時間で業務に活かせるスキルを習得。
-
少人数制のため、定員になり次第締切!
→ セミナー詳細を今すぐチェック
📈 Power BI ハンズオンセミナー中級編
-
DAX 関数 × データモデル設計 で長時間データや大規模データを自在に扱う!
-
即戦力につながる実践形式のレッスン。
→ 詳細はこちら
DAX と適切なデータモデリングがあれば、24 時間を超える時間計測や大量データの分析もスムーズに行えます。組織のデータドリブン文化をさらに推進しましょう。
7. まとめ
-
Power BI の標準「時刻型」では 24 時間を超える値が扱いにくい
-
Duration 型(または DAX を用いた時間計算) を活用して正しく集計
-
大規模データを扱う場合 は、前処理・DirectQuery・要約テーブルでパフォーマンスを改善
-
困ったときは無料相談 & セミナー で専門知識を取り入れ、最短ルートで成果を上げる
長時間を扱うシーンでは一見ハードルが高そうですが、Power Query の Duration 型や DAX メジャーを使えばスムーズに実装できます。ぜひ今回のポイントを参考に、24 時間超の時間データを正しく分析・可視化してみてください!
コメント