Excel PowerQuery

ファイルからデータを取り込む方法 -PowerQuery基礎-

こんにちわ、マツコ先生 です。

「外部ファイルからデータを取り込む方法」でお困りではないでしょうか?

本記事ではそんなお悩みを解決していきますよ!

本記事を読むことで
・CSVファイルや他のエクセルにあるデータを取り込むことができる
・データを取り込むときに文字化けしないで取り込むことができる

データを取り込む際のポイント

次のポイントについて、データを取り込んだ後の作業を検討し、取り込み方法を決定しましょう

  • 取り込むデータは更新されることがあるか(1度取り込んだら更新の必要はないか)
  • 取り込むデータは他データと連携または加工する必要があるか

取り込んだデータをどう保持するかによって3通りの方法があります

シートに直接取り込むPower Query経由でシートにテーブルとして取り込むPower Query経由でデータモデルとして取り込む
目的1回取り込んだ後は、データの更新がない場合データを加工してからシートに取り込みたい場合
更新されたデータを定期的に取り込み直したい場合
Pivotテーブルとしてシートに表示したい場合
更新されたデータを定期的に取り込み直したい場合
メリット-読み込み元ファイルが更新されても、読み込み直すだけで、自動的に同じ加工処理をして出力先シートを更新できる。読み込み元ファイルが更新されても、読み込み直すだけで、自動的に同じ加工処理をして出力先シートを更新できる。
デメリット取り込んだデータを更新したい場合、再度、取り込む作業が必要になる。--
使用例CSVやテキスト形式のデータをエクセル形式にする。毎月の商品売上データを集計してシートに表として表示する。毎月の商品売上データを来客数情報と連携させて、Power Pivotでグラフ表示させる。

サンプルとして、取り込むデータは次のような、産地と品名がリストになっているCSV(“,(コンマ)“などで区切ったテキスト)ファイルを準備しました。

方法1:シートに直接取り込む

上部メニューから、“ファイル“ > “開く“ を選択し、CSVファイルを選択し、“開く“ をクリックします。

"ファイルを開く" ウィンドウが開いたら、取り込みたいファイルを選択し、"開く" をクリックします。

ファイルを開くと“テキスト ファイルウィザード(取り込みの設定ガイド)“のウィンドウが表示されます。

  • 元データの形式
    値の区切りをどうやって判別するかを設定します。今回は、“,(コンマ)“ で区切ったデータであるため、“コンマやタブなどの区切り文字によってフィールドごとに区切られたデータ“ を選択します。
  • 取り込み開始行
    ヘッダー(見出し)含めて、何行目から取り込むかを設定します。最初の行にデータの説明など不要な情報の行があるときに変更しますが、今回は不要な情報がないため1行目とします。
  • 元のファイル
    文字コードを設定します。データがどんな言語で作成されているかを設定します。初期値の “Unicode(UTF-8)” は各国の言語を網羅した設定値になりますが、ウィンドウ下のプレビューの文字表示が正しく表示されるかを確認しながら、設定を変更します。他に日本語に対応したものとして、“IS0“、“JIS“ などがあります。
  • 先頭行をデータの見出しとして使用する
    取り込み開始行が見出行としたい場合は、チェックBOXをオンにします。今回は、見出行がありますが、そのまま取り込むため、チェックBOXをオフのままとします。
  • 区切り文字
    “コンマ" や "タブ" などの区切り文字によってフィールドごとに区切られたデータ“ を選択した場合、どんな文字で区切ったデータなのかを設定します。複数選択できるため、ウィンドウ下のプレビューで正しく区切られているか確認しながら設定しましょう。今回は “,(コンマ)“ で区切られているため,“コンマ” のチェックBOXをオンにします。
  • 連続下区切り文字は1文字として扱う
    設定下区切り文字が2文字以上連続していた場合,1つとみなすかどうかを設定します。本来は、元データを作る(出力する)段階で、区切り文字が連続しないようなデータに修正しておくべきです。例えば、何も値がない列があって、かつ、あらかじめ修正できない場合など、やむを得ず区切り文字が連続してしまう場合に設定します。
  • 文字列の引用符
    データの文中に引用符を使用している場合、設定することで区切り文字と認識しないようにします。
  • 列のデータ形式
    列毎にどのようなデータ形式で取り込むのかを設定します。ウィンドウ下のプレビューにて列を選択してから、データ形式を選択しましょう。今回は全て文字列として取り込んでみます。
    • G/標準
      データの内容に応じて自動認識します。正しく認識できているかウィンドウ下のプレビューを確認しましょう。
    • 文字列
      文字列としてデータの値をそのまま表示します。
    • 日付
      日付の形式となっているデータを日付データとして取り込みます。ドロップダウンリストから表示形式を選択しましょう。このとき、"Y" はyear(年)、"M" はMonth(月)、"D" は Day(日)を示しています。表示したい順番のものを選択しましょう。
    • 削除する
      取り込み時に削除する場合に選択します。

"完了" ボタンを押すとデータを取り込んだ新しいシートが表示されます。

方法2:Power Query経由でシートにテーブルとして取り込む

上部メニューから、“ファイル“ > “新規“ を選択し、“空白のブック“ をクリックします。

上部メニューから、“データ“ > “データの取得“ を選択し、“ファイルから“ > "テキストまたはCSVから" をクリックします。

"ファイルを開く" ウィンドウが開いたら、取り込みたいファイルを選択し、"開く" をクリックします。

ファイルを開くと "取り込みの設定ガイド" のウィンドウが表示されます。

  • 元のファイル
    文字コードを設定します。データがどんな言語で作成されているかを設定します。初期値の “Unicode(UTF-8)” は各国の言語を網羅した設定値になりますが、ウィンドウ下のプレビューの文字表示が正しく表示されるかを確認しながら、設定を変更します。他に日本語に対応したものとして、“IS0“、“JIS“ などがあります。
  • 区切り記号
    “コンマ" や "タブ" などの区切り文字によってフィールドごとに区切られたデータ“ を選択した場合、どんな文字で区切ったデータなのかを設定します。ウィンドウ下のプレビューで正しく区切られているか確認しながら設定しましょう。今回は “,(コンマ)“ で区切られているため,“コンマ” を選択します。
  • データ型検出
    列毎にどのようなデータ形式なのかを自動的に判断するために必要な行数を設定します。データ形式は後で変更できるため、ここは初期値の "最初の200行に基づく" のままで問題ありません。

"データの変換" ボタンを押すと "Power Query エディター" のウィンドウが表示されます。

取り込まれたデータのヘッダー(見出し)に表示される文字の左側に、自動認識したデータ形式が表示されています。変更する場合は、この表示部分をクリックし、適切なデータ形式を選択しましょう。

設定が終わったら、"ホーム" > "閉じて読み込む" の文字部分(アイコン部分ではない)をクリックし、"閉じて読み込む" を選択します。

その後、新しいシートに取り込んだデータがテーブルとして表示されます。

取り込み方法を後から変更したい(シートにテーブルとして表示させたくない)場合は、こちらの記事を参照願います。

あわせて読みたい

取り込んだデータを更新したい場合は、こちらの記事を参照願います。

あわせて読みたい

方法3:Power Query経由でデータモデルとして取り込む

上部メニューから、“ファイル“ > “新規“ を選択し、“空白のブック“ をクリックします。

上部メニューから、“データ“ > “データの取得“ を選択し、“ファイルから“ > "テキストまたはCSVから" をクリックします。

"ファイルを開く" ウィンドウが開いたら、取り込みたいファイルを選択し、"開く" をクリックします。

ファイルを開くと "取り込みの設定ガイド" のウィンドウが表示されます。

  • 元のファイル
    文字コードを設定します。データがどんな言語で作成されているかを設定します。初期値の “Unicode(UTF-8)” は各国の言語を網羅した設定値になりますが、ウィンドウ下のプレビューの文字表示が正しく表示されるかを確認しながら、設定を変更します。他に日本語に対応したものとして、“IS0“、“JIS“ などがあります。
  • 区切り記号
    “コンマ" や "タブ" などの区切り文字によってフィールドごとに区切られたデータ“ を選択した場合、どんな文字で区切ったデータなのかを設定します。ウィンドウ下のプレビューで正しく区切られているか確認しながら設定しましょう。今回は “,(コンマ)“ で区切られているため,“コンマ” を選択します。
  • データ型検出
    列毎にどのようなデータ形式なのかを自動的に判断するために必要な行数を設定します。データ形式は後で変更できるため、ここは初期値の "最初の200行に基づく" のままで問題ありません。

"データの変換" ボタンを押すと "Power Query エディター" のウィンドウが表示されます。

取り込まれたデータのヘッダー(見出し)に表示される文字の左側に、自動認識したデータ形式が表示されています。変更する場合は、この表示部分をクリックし、適切なデータ形式を選択しましょう。

設定が終わったら、"ホーム" > "閉じて読み込む" の文字部分(アイコン部分ではない)をクリックし、"閉じて次に読み込む" を選択します。

その後、取り込んだデータはデータモデルとして内部で保存されます。データモデルは、Pivotテーブルとしてシートに表示したい場合に参照されるため、取り込んだ後のシートには何も表示されません。

取り込み方法を後から変更したい(シートにテーブルとして表示させたい)場合は、こちらの記事を参照願います。

あわせて読みたい

取り込んだデータを更新したい場合は、こちらの記事を参照願います。

あわせて読みたい

まとめ

今回は「外部ファイルからデータを取り込む方法」をご説明しました。

データを取り込む目的によって3種類の方法があります。

  • 方法1:シートに直接取り込む
  • 方法2:Power Query経由でシートにテーブルとして取り込む
  • 方法3:Power Query経由でデータモデルとして取り込む

また、どの方法を選択するかは、次のデータを取り込む際のポイントに留意しましょう。

  • 取り込むデータは更新されることがあるか(1度取り込んだら更新の必要はないか)
  • 取り込むデータは他データと連携または加工する必要があるか

以下の記事もお困りの問題を解決するヒントになるかもしれないので、ぜひ参考にしてみてください!

あわせて読みたい

-Excel, PowerQuery
-,