【エラー対応】Power BI/ Power Query の列名の重複で発生するエラーの解決方法について




この記事では「サーバーに対する変更の保存に失敗しました。返されたエラー:’Column (名前’列名’)は、Tableに既に存在します。’」というエラーの原因とその対処方法について解説していきます。

実際に読み込み時に発生したエラーが下の画面です。

Power BIだけでなくExcelでPower Queryを使う時にも発生する可能性があるので、Power Query側ではエラーが出ていないのに適用した際にエラーで反映できないといった悩みがあればぜひこの記事を参考にしてください!

‘Column (名前’列名’)は、Tableに既に存在します。’エラーの原因は列名の重複

今回のテストデータはこちら

A列がID、B列が試験コード (全角カタカナ)、C列が試験コード (半角カタカナ)の列名を持っています。

このデータをPower Queryで取得すると別々の列名として認識されますが、
Power BIデスクトップ側に反映しようとすると下のようにエラーが発生します。

これはPower QueryとPower BIデスクトップ側で列名の処理が異なるために起こるエラーのようです。

Power Query:半角、全角カタカナは別の文字として処理
Power BIデスクトップ:半角、全角カタカナは同じ文字として処理

エラーの対象方法としては半角カタカナと全角カタカナを使って同一の列名を使用することは避ける必要があります

そもそも半角カタカナを使う機会はそうそうないですが…エラーが出た際に対処できるよう記憶の片隅に残しておきましょう!

同じ列名でアルファベットの大文字、小文字のみが場合は自動で採番して回避してくれる

先ほどは少し特殊なパターンのエラーでしたがもう少し頻度が高そうな大文字、小文字で列名を区別した際に発生するパターンを紹介します。

テストデータはこちら

A列がID、B列がTest (先頭が大文字)、C列がtest (すべて小文字)の列名を持っています。

先ほどと同様にPower Queryでは問題なく読み込まれますが、Power Query側が気を利かせて小文字のtestをtest.1に変更していますね。

test.1をもう一度testに修正して適用してみると、なんとtest 2として列名の重複を自動で回避してくれました!!

デスクトップ側ではtest 2として表示されていますがPower Query側ではtestのままです。

適用時に列名を自動で変更してくれたためエラー無く適用できましたが、列名が異なると作業しているときに間違える可能性があるので大文字、小文字で列名を区別するようなデータ取り込みは避けることがベストですね。

【まとめ:列名は全角半角カタカナや大文字小文字での違いだけで命名するのはNG】

Power Query側とデスクトップ側で列名が重複しているかを確認する処理が異なっていることが分かりましたね。
列名の命名時には大文字小文字だけの区別 (Testとtest)や半角全角カタカナでの区別は避けるようにしましょう。

命名時の注意点!

  1. 半角と全角のカタカナは併用しない (どちらかに統一する)
  2. 大文字小文字で区別する列名は使用しない (Testとtestなど)

Power BIの基本的な操作方法や他のエラーについても紹介していますので他の記事もぜひご覧ください!

【初心者向け】Power BIの使用方法(まとめ)2022/7/19更新

Power BIのデータフロー機能と更新できないエラーの対処法【OData、RootActivityId Error】




コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です