Power Queryの型変換エラーを、削除する前に元の値までたどる

LWP | Power Queryの型変換エラーを、削除する前に元の値までたどる

図解1|一行は、一件の数量入力

番号で識別する三件の数量入力。番号1は2、番号2は未定、番号3は0。未定と数量ゼロの意味を区別する。

図1|数量を変換する前に、一行の意味と追跡用の番号を確かめる。

解説1|入力の意味を、変換の前にそろえる

ストーリー

フナさんの手元には、数量が「未定」の入力が一件あります。エラーをなくすために0へ変えてもよいのでしょうか。シャケモンと、小さな練習表で行の行方を確かめます。

入力例

一行は「番号で識別する一件の数量入力」です。番号は数量ではなく、同じ入力を追うための目印です。この練習では重複させません。

番号

数量

1

2

2

未定

3

0

練習表を取り込む

既存の業務表とは別のブックへ、上の二列三行を入力します。見出しを含む範囲内を選び、[挿入]→[テーブル]で先頭行を見出しにしたテーブルを作ります。[データ]→[テーブルまたは範囲から]でPower Queryエディターへ取り込みます。 自動で型変更のステップが付いた場合は、練習用クエリでそのステップを削除し、数量列のデータ型を[テキスト]にします。ここを変換前の基準にします。番号列と元の三行は残してください。

読むポイント

「未定」は、まだ値を決められない状態です。「0」は数量ゼロという値が決まった状態です。計算に使える形へそろえる操作が、入力の意味まで決めてくれるわけではありません。

図解2|未定はError、0は数値

数量列をテキストから整数へ変換すると、2は2、未定はError、0は0になる。同じ番号の三行が残る。

図2|変換できない数量セルと、正常な数値0を区別する。

解説2|数量列だけを整数へ変える

型を変える対象

この表で変換したいのは数量列です。整数へ変えても、一行が一件の入力という関係や、番号の意味は変わりません。テキストの「2」「0」は数値にできますが、「未定」は整数として読めません。

操作と結果

取り込んだクエリの数量列を選び、列見出しのデータ型アイコン、または[変換]タブの[データ型]から[整数]を選びます。既存の型変更を置き換えるか確認された場合は、新しいステップとして追加します。型変更前のテキストを読む段階を残すためです。クエリ名を「数量型変換」にし、最後のステップが下表の三行を返す状態で残します。

番号

型変更前の数量

型変更後の数量

1

2

2

2

未定

Error

3

0

0

エラーの場所を見る

数量のErrorセルを選ぶと、変換できない理由や詳細を確認できます。ここで起きているのは、表の一つのセルを数値にできない問題です。ファイル自体を開けず、ステップ全体が失敗する場合とは区別してください。 図は模式図です。三行の結果はExcelのPower Queryエンジンで確認済みです。GUI手順は通し確認前のため、表示名や位置は利用中のExcelで確かめてください。

図解3|エラーの保持で、一行を残す

数量列を検査対象にしてエラーの保持を行うと、番号2と数量Errorの一行が残る。番号3の0はエラー行に含まれない。

図3|検査対象は数量列、抽出される単位は行。

解説3|確認する一行を取り出す

列を調べ、行を残す

[エラーの保持]は、選んだ列にエラーがある行を残す操作です。今回選ぶのは数量列だけです。番号列まで削られるわけではなく、残った入力を調べるための番号も一緒に保持できます。

操作

クエリ一覧の「数量型変換」を右クリックして[複製]し、複製を「数量確認練習」と名付けます。この複製の型変更後のステップで数量列を選び、[ホーム]→[行の保持]→[エラーの保持]を選びます。結果は、番号2・数量Errorの一行です。番号1の数量2と番号3の数量0は、数量の型変換エラーではないため、この確認結果には入りません。元の「数量型変換」は三行のまま保持します。

番号

数量

2

Error

保持と修正は違う

抽出後も数量セルはErrorのままです。[エラーの保持]は元の「未定」を復元する操作でも、入力を修正する操作でもありません。「問題を調べる対象を見失わない」ために使います。 エラーが見えなくなったことだけを成功とすると、数量0の行や、調べるべき一件を見落としかねません。今回の期待は「確認側に番号2だけが残る」です。数量0を異常として扱わない点まで確かめます。

読むポイント

検査する列を増やせば、別の列のエラーで残る行も変わります。本例の一行という結果は、数量列だけを検査する条件で成立します。

図解4|同じ番号で、元の値へ戻る

確認結果の番号2を、型変更前の番号2と照合する。数量の元値は未定。エラーの保持自体が元値を復元するわけではない。

図4|確認側の番号を手掛かりに、型変更前の同じ入力を読む。

解説4|前のステップで元の意味を確かめる

番号が二つの状態を結ぶ

確認用の結果には番号2が残っています。型変更前にも番号2があるので、数量Errorと元の「未定」が同じ入力の前後だと分かります。行の見た目の位置だけではなく、番号で照合することがポイントです。

操作

「数量確認練習」を選び、[適用したステップ]で、数量を整数にしたステップの一つ前を選びます。エラーの保持の直前へ戻るだけでは、型変更後のErrorを見ている場合があります。数量をまだテキストとして読んでいる段階まで戻り、番号2の数量が「未定」であることを確認してください。 以前のステップを選ぶのは、その段階の結果を見る操作です。後のステップを削除したり、入力を修正したりしたことにはなりません。確認後は最後のステップを選んで、確認用の一行へ戻れます。

入力の訂正は意味を確認してから

「未定」がなぜ入力されたのか、正しい数量はいくつかは、この表だけでは分かりません。フナさんは元の記録や担当者へ照合し、値が確定してから元のExcelテーブルを訂正します。 0へ置換すると、未確定を数量ゼロとして扱います。削除すると、その一件が結果から外れます。この例では、残る数量の合計が2でも、未解決の一件がある事実は変わりません。合計が計算できることと、元の入力を確認できたことは別です。

図解5|2行と確認1行で、全3行を追う

型変換後の三行を参照し、数量のエラー削除で番号1と3の二行、エラー保持で番号2の一行へ分ける。全入力の解決と部分結果の作成を区別する。

図5|変換できた側を作っても、確認する一行を残して追跡する。

解説5|部分結果と、全入力の確認を分ける

二つの役割を参照で作る

元の「数量型変換」を選び、最後のステップに三行が残っていることを確認します。このクエリを右クリックし、[参照]を二回使って二つのクエリを作ります。「数量確認練習」からは分岐しません。 「数量変換確認」は数量列を選び[エラーの保持]を行い、「数量変換できた側」は同じ列を選び[エラーの削除]を行います。後者は列の右クリックメニューから選べます。どちらも[閉じて読み込む]で別のワークシートのテーブルへ読み込み、結果を並べて確認します。

役割

残る番号

行数

数量変換できた側

1、3

2

数量変換確認

2

1

まとめ

元の3行を、変換できた2行と確認する1行に分けました。確認が一行残る間は、全入力が解決したことにはできません。正しい数量が確定したら元表を訂正し、両方を更新して今回の結果を確認します。

今回の仕掛け

番号を残し、同じ三行から二つの役割へ分岐することで、部分結果の作成と未解決の確認を両立します。上流が失敗すると確認表も更新できない場合があります。前回の0行表示だけで今回も成功したと判断せず、更新の完了とエラーの有無を確認してください。今回の点検は数量の型変換だけで、必須値・負数などの業務条件全体の合格判定ではありません。

出典メモ

『ためしてわかる Power Query GUI』V037_261015の3.4.3を主に、9.3.1・9.3.3の確認表と入力全体の判定を一部参照。原稿の三行を維持し、第9章の複数列・売上判定は数量一列の小例へ範囲を絞りました。Microsoft Learn:Power Queryでのエラー処理。

利用について

Copyright © 2026 LWP 山中 一弘

本資料は、出典を明記いただければ、商用・非商用を問わず、ご自由に複製・改変・再配布していただけます。なお、著作権表示は改変せず、そのまま記載してご利用くださいますようお願いいたします。