[char no=”3″ char=”Aさん”]表の数値の列を対象に四捨五入等の端数処理を行いたいです。
Power Queryエディター上で端数処理を行う場合、どうしたら良いですか?[/char]
では、詳細を解説していきますね。[/char]
目次[閉じる]
はじめに
この記事はパワークエリの概要を把握していることが前提です。
「四捨五入」・「切り上げ」・「切り捨て」の使いどころ
「四捨五入」・「切り上げ」・「切り捨て」コマンドは、クエリの新規作成ステップのうち、STEP2の「取得データを整形/加工(Transform)」に該当する機能です。
機能自体は、ワークシート上の関数の「ROUND」・「ROUNDUP」・「ROUNDDOWN」と似ています。
クエリ内の一連の整形作業の中で、端数処理を行いたい場合に「四捨五入」・「切り上げ」・「切り捨て」コマンドを使いましょう。
端数処理とは、主に小数点以下がある数値を整数や少数第一位といった任意の幅へ丸める処理のこと(端数処理のことを「丸め」とも言う)。
「四捨五入」・「切り上げ」・「切り捨て」コマンドを活用することで、選択した数値列を対象に端数処理できます。
ワークシート上の関数の「ROUND」・「ROUNDUP」・「ROUNDDOWN」の詳細は、以下の記事をご参照ください。 【関数】数値データを指定した桁数に四捨五入できる「ROUND」の使い方 はじめにこの記事は関数の概要を把握していることが前提です。参考記事関数の概要については以下の記事をご参照ください。数値データを四捨五入したい場合は「ROUND」・・・ 【関数】数値データを指定した桁数に切り上げできる「ROUNDUP」の使い方 はじめにこの記事は関数の概要を把握していることが前提です。参考記事関数の概要については以下の記事をご参照ください。数値データを切り上げしたい場合は「ROUNDU・・・ 【関数】数値データを指定した桁数に切り捨てできる「ROUNDDOWN」の使い方 はじめにこの記事は関数の概要を把握していることが前提です。参考記事関数の概要については以下の記事をご参照ください。数値データを切り捨てしたい場合は「ROUNDD・・・![]()
![]()
![]()
使用イメージ
「割引後金額」列を整数(少数点以下の桁数:0)へ四捨五入したイメージが以下です。
Power Queryエディター上で四捨五入のステップを登録できました。
「四捨五入」コマンドの場合、デフォルトのステップ名は「四捨五入」になる(クエリ内で2つ目以降の「四捨五入」ステップは連番が付加)。
「切り上げ」コマンドの場合、デフォルトのステップ名は「切り上げ」になる。
「切り捨て」コマンドの場合、デフォルトのステップ名は「切り捨て」になる。
後は、クエリ新規作成ステップのSTEP2で必要な他ステップを登録したら、STEP3を行いましょう。
これにより、クエリに記録した「四捨五入」・「切り上げ」・「切り捨て」コマンドのステップを自動化できます。
「四捨五入」・「切り上げ」・「切り捨て」コマンドのステップ登録後、端数処理対象の列名を変更すると、クエリ更新時にエラーになるため注意(対処法は、後述の「登録したステップの変更手順」を参照)。
クエリの新規作成ステップのSTEP2に役立つ各種コマンドの詳細は「パワークエリ(Power Query)の記事一覧」を、STEP3の手順はパワークエリの概要記事をご参照ください。 パワークエリ(Power Query) - タグ - Excelを制する者は人生を制す パワークエリ(Power Query) - タグ - パワークエリ(Power Query)に関してのコンテンツです。 【Excel】パワークエリ(Power Query)とは?できることや使い方入門【動画あり】 - Excelを制する者は人生を制す Excelで集計前のデータの収集や整形に苦労している方は、パワークエリ(Power Query)を活用することで、マウス操作を中心に一連の作業を自動化できます。この記事では、Excel本著者が初心者向けにパワークエリの概要や基本の使い方を図解・動画付きで解説します。![]()
![]()
ステップ登録手順
「四捨五入」・「切り上げ」・「切り捨て」コマンドのステップを登録したい場合、コマンドにより手順が異なります。
「四捨五入」コマンド
「四捨五入」コマンドの場合、以下の手順となります。
- 端数処理したい列を選択
※今回は「割引後金額」列 - リボン「変換」タブをクリック
- 「丸め」をクリック
- 「四捨五入」をクリック
※今回は「乗算」 - 任意の桁数を入力
※今回は「0」 - 「OK」をクリック
手順①の列を上書きしたくない場合、手順②はリボン「列の追加」タブをクリック。
※同じコマンドがあるが、手順①の列を残し、端数処理の結果を新たな列として追加。
手順①で選択した列のデータ型が「数値」以外の場合、手順③以降は非活性となる。
「切り上げ」・「切り捨て」コマンド
「切り上げ」・「切り捨て」コマンドの場合、以下の手順となります。
- 端数処理したい列を選択
※今回は「割引後金額」列 - リボン「変換」タブをクリック
- 「丸め」をクリック
- 「切り上げ」 or 「切り捨て」をクリック
※今回は「切り上げ」
手順①の列を上書きしたくない場合、手順②はリボン「列の追加」タブをクリック。
※同じコマンドがあるが、手順①の列を残し、端数処理の結果を新たな列として追加。
手順①で選択した列のデータ型が「数値」以外の場合、手順③以降は非活性となる。
手順④は、端数処理したい内容によって使い分け。
【注意】「四捨五入」コマンドは銀行型丸めがデフォルト
Power Queryエディターの「四捨五入」コマンドは、デフォルトは「銀行型丸め」が適用されており、ワークシート上の関数のROUNDと結果が異なる場合があります(ROUNDは「算術型丸め」)。
この銀行型丸めだと、中間の0.5が偶数側に丸められてしまいます。
たとえば、4行目の数値は元が「1498.5」であるため、通常(算術型丸め)の四捨五入であれば「1499」になるはずが、銀行型丸めだと「1498」となってしまいます。
この対策として、M関数の「Number.Round」を使い、引数「roundingMode」に「RoundingMode.AwayFromZero」を指定したカスタム列を追加する必要があります。
M関数の「Number.Round」の詳細は、以下の記事をご参照ください。 【パワークエリ】数値列を「算術型丸め」で四捨五入できるM関数「Number.Round」の使い方 はじめにこの記事は「四捨五入」・「カスタム列」コマンドの詳細を把握していることが前提です。参考記事「四捨五入」・「カスタム列」コマンドの詳細は、以下の記事をご参・・・![]()
【参考】「切り上げ」・「切り捨て」コマンドとROUNDUP・ROUNDDOWN関数の違い
「切り上げ」・「切り捨て」コマンドとワークシート関数のROUNDUP・ROUNDDOWNとの違いは、端数処理の対象とする桁数を指定できるか否かです(「切り上げ」・「切り捨て」コマンドは指定不可)。
- 「切り上げ」・「切り捨て」コマンド:整数(小数点以下の桁数:0)への端数処理のみ
- ROUNDUP・ROUNDDOWN:整数の位や小数点以下の桁数を任意に指定可能
Power Queryエディター上で整数(小数点以下の桁数:0)以外の切り上げ・切り捨てを行いたい場合、M関数の「Number.RoundUp」・「Number.RoundDown」を使い、引数「digits」に任意の桁数を指定したカスタム列を追加する必要があります。
M関数の「Number.RoundUp」・「Number.RoundDown」の詳細は、以下の記事をご参照ください。 【パワークエリ】数値列を任意の桁数で切り上げできるM関数「Number.RoundUp」の使い方 はじめにこの記事は「切り上げ」・「カスタム列」コマンドの詳細を把握していることが前提です。参考記事「切り上げ」・「カスタム列」コマンドの詳細は、以下の記事をご参・・・ 【パワークエリ】数値列を任意の桁数で切り捨てできるM関数「Number.RoundDown」の使い方 はじめにこの記事は「切り捨て」・「カスタム列」コマンドの詳細を把握していることが前提です。参考記事「切り捨て」・「カスタム列」コマンドの詳細は、以下の記事をご参・・・![]()
![]()
登録したステップの変更手順
「四捨五入」・「切り上げ」・「切り捨て」コマンドで登録したステップを後から変更する場合、変更したい内容が四捨五入の小数点以下の桁数か、それ以外かで手順が異なります。
それぞれの手順を順番に解説していきましょう。
四捨五入の少数点以下の桁数
四捨五入の小数点以下の桁数を後から変更したい場合、以下の手順で変更しましょう。
- 「四捨五入」ステップの歯車マークをクリック
- 任意の桁数へ修正
- 「OK」をクリック
手順①のステップ名は「四捨五入」コマンドのデフォルトの名前(自身でリネームしている場合は別表記)。
手順①はステップ名をダブルクリックでもOK。
手順①で起動した「四捨五入」ダイアログは、ステップに設定した内容がセットされた状態。
その他
四捨五入の小数点以下の桁数以外の内容(端数処理対象の列等)を後から変更したい場合、以下の手順で変更しましょう。
- 「四捨五入」 or 「切り上げ」 or 「切り捨て」ステップを削除(「×」をクリック)
- 再度「四捨五入」・「切り上げ」・「切り捨て」コマンドのステップ登録手順を実行
手順①のステップ名は、「四捨五入」・「切り上げ」・「切り捨て」コマンドのデフォルトの名前(自身でリネームしている場合は別表記)。
サンプルファイルで練習しよう!
可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。
サンプルファイル_PowerQueryデータ整形_丸め.xlsx
サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります(上記リンクから登録フォームへ遷移します)。
ブックを開いたら、「売上明細」クエリを編集(Power Queryエディター起動)し、次の手順を実施してください(今までの解説のまとめです)。
ブック起動時、「セキュリティの警告」メッセージが表示された場合は「コンテンツの有効化」をクリック。
- 端数処理したい列を選択
※今回は「割引後金額」列 - リボン「変換」タブをクリック
- 「丸め」をクリック
- 「四捨五入」をクリック
※今回は「乗算」 - 任意の桁数を入力
※今回は「0」 - 「OK」をクリック
本記事の解説と同じ結果になればOKです!
さいごに
いかがでしたでしょうか?
「四捨五入」・「切り上げ」・「切り捨て」コマンドは、選択した数値列を対象に端数処理できます。
小数点以下の数値を扱う上で端数処理は必須なので、ぜひこの機会に覚えてしまいましょう。
なお、パワークエリの各種テクニックは、私の拙著でも体系的に解説していますので、こちらも参考にしてみてください。
また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!
ご参考になれば幸いですm(_ _)m
具体的には、四則演算を計算できる「加算」・「減算」・「乗算」・「除算」コマンドや、剰余(除算の余りの数)を計算できる「剰余」コマンドです。
元データを集計/分析しやすくする際に便利なので、ケースに応じて活用していきましょう![/char]


コメント Comments
コメント一覧
コメントはありません。
トラックバックURL
https://excel-master.net/data-shaping/power-query-rounding/trackback/