
【エクセル パワークエリ】列名を指定せずにすべての列をトリミングする方法【Excel Power Query】
****** 動画による解説 ******

Power Query では、『トリミング』という機能を使うことで、列のデータの前後に含まれる空白スペースを削除することができます。



もし、特定の列だけではなく、テーブルに存在するすべての列のデータをトリミングしたいときは、 Ctrl + A ですべての列を選択してからトリミングを実行することで、テーブル全体でトリミングを一度に行うことができます。




ただ、この方法はひとつ問題があります。
Ctrl + A ですべての列を選択してから、トリミングを実行したときに生成されるステップの数式は以下の通りです。

= Table.TransformColumns(ソース,{{"列A", Text.Trim, type text}, {"列B", Text.Trim, type text}, {"列C", Text.Trim, type text}, {"列D", Text.Trim, type text}, {"列E", Text.Trim, type text}})
数式を見るとわかりますが、テーブルに含まれるすべての列の名前を指定してしてデータをトリミングする、というものになっています。
このクエリで取得するテーブルの列構成が常に
『列A、列B、列C、列D、列E』
の5列であるなら問題ありませんが、クエリで取得するテーブルの列数が増えたり減ったり、列名が異なったりする場合、数式で指定する名前の列が存在しないことになりますので、このステップではエラーが発生してしまいます。


このように、それぞれの列名を指定した形でトリミングする数式では、列構成が変動するようなテーブルに対応することができません。
そこで、列の名前を指定することなく、テーブルのすべての列でトリミングするためには、『トリムテキスト』のステップの数式を、、、
【変更前】
= Table.TransformColumns(ソース,
{{"列A", Text.Trim, type text}, {"列B", Text.Trim, type text}, {"列C", Text.Trim, type text}, {"列D", Text.Trim, type text}, {"列E", Text.Trim, type text}}
)
以下のように変更します。
よければサポートしていただけると嬉しいです😀 有用な記事や動画を制作していけるように頑張ります❗️