Excelでは、外部からさまざまな形式のデータを取り込むことができます。
[データ]タブにある[外部データの取り込み]機能を使って、テキストファイルのデータを取り込む方法を解説します。
[外部データの取り込み]機能を使うと、テキストファイルはそのままで、データのみをExcelに取り込むことができます。
また、[外部データの取り込み]機能を使うと、取り込み元のテキストファイルと接続した状態になるので、テキストファイルのデータに変更があった場合は、簡単に変更されたデータをExcelに反映させることができます。
参考Excel2019では、Power Query(パワークエリ)が起動するようになっていますが、設定によって[テキストファイルウィザード]で取り込むことも可能です。
-
Excelでテキストファイルを読み込む(Power Queryとテキストファイルウィザード)
テキストファイルをExcelに取り込む方法は、外部データとして読み込む方法と、Excelで開く方法がありますが、Excel2019では外部デ ...
また、Excel2016でも[データ]タブの[新しいクエリ]から操作すると、PowerQueryを起動して取り込むことができます。操作については、上記ページで解説しています。
Power Queryは、Excel2010とExcel2013にもアドインとしてインストールして、使用することができます。
-
Excel2013にPower Queryをインストールして[POWER QUERY]タブを表示
Excel2013にPower QueryアドインをMicrosoftのダウンロードセンターのページからインストールしてみました。OSは、W ...
この記事の目次
テキストファイル
テキストファイルの形式は拡張子で判断することができます。拡張子とは、ファイルの種類を識別するもので、ファイル名の後ろにアルファベットで表示されているものです。
Windowsの設定で拡張子を表示することができます。
その方法については、以下の記事で解説しています。
-
登録されている拡張子を表示するには(Windows7からWindows11まで)
拡張子とは、どのアプリケーションで開くことができるファイルなのかを示すファイル名の最後に表示される3文字程度の文字列のことです。 Windo ...
よく使うテキストファイルは、txt形式のテキストファイルや、[,](カンマ)で区切ったCSV形式のテキストファイルです。
TXT形式のテキストファイル
以下は、[サンプル1.txt]というテキストファイルをメモ帳で開いた状態です。タブ区切りのテキストファイルです。
CSV形式のテキストファイル
[サンプル2.csv]というCSVファイルをメモ帳で開いた状態です。CSVファイルとは、カンマで区切られたテキストファイルのことです。
参考テキストファイルをコピーして貼り付ける場合は、[貼り付けのオプション]の[テキストファイルウィザードを使用]を選択して貼り付けることもできます。
-
貼り付けオプションの[テキストファイルウィザードの使用]が便利
Office2010の貼り付けのオプションは、リアルタイムプレビューという機能で貼り付けを確定する前に結果を確認することができます。 貼り付 ...
外部データの取り込み
[データ]タブの[外部データの取り込み]グループにある[テキストファイル]をクリックします。ポップヒントには、以下のように記されています。
テキストからデータを取得
テキストファイルからデータをインポートします。
[テキストファイルのインポート]ダイアログボックスが表示されます。
インポートしたいテキストファイルを選択して、[インポート]ボタンをクリックします。
ここでは、[サンプル2.csv]ファイルを選択して、インポートします。
テキストファイル ウィザード - 1/3
[テキストファイルウィザード - 1/3]が表示されます。
[カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ]を選択します。
既定で選択されていると思いますが、念のため確認してください。
参考言語が[932:日本語(シフトJIS)]になっていることも確認してください。
ダイアログボックスの下方にあるプレビューで文字化けしている状態であれば、言語を選択し直す必要があります。
【ベトナム語が自動選択された事例】
これは、原因はよくわかっていませんが、時々、下のように[ベトナム語]が自動で選択されていることがあります。
実際、私が遭遇した事例ですが、以下のCSVファイルを取り込むときに発生しました。
いろいろ試したところ、先頭行にある[方]の文字を削除すると、[日本語(シフトJIS)]が選択されました。
txtファイルでも同じ現象でした。
OSやOfficeのバージョンではなく、取り込み元のテキストファイルに含まれる文字によって、時々こういう現象が起きるようです。
テキストファイル ウィザード - 2/3
[テキストファイルウィザード - 2/3]が表示されます。
CSVファイルを選択しているので、[カンマ]のチェックボックスをオンにします。
[次へ]のボタンをクリックします。
参考txtファイルの場合は、[タブ]が選択されていればOKです。
テキストファイル ウィザード - 3/3
[テキストファイルウィザード - 3/3]が表示されます。
ここでは、取り込み時のデータ形式を変更することができます。
ここも重要です。
重要先頭に[0]がつく場合は、数値として取り扱われるため、[0]が取り除かれてしまいます。また、[1-1]や[1/2]などと入力されたものは、日付と認識されてしまいます。
なので、ここでは[商品コード]と[商品番号]のデータ形式を[文字列]にします。
【操作】[データのプレビュー]で[商品コード]の[G/標準]の箇所をクリックして、[列のデータ形式]から[文字列]を選択します。
同じように、[商品番号]の[G/標準]の箇所をクリックして、[列のデータ形式]から[文字列]を選択します。
[商品コード]と[商品番号]のデータ形式が[文字列]に変更されたことを確認したら、[完了]ボタンをクリックします。
この[テキストファイル ウィザード - 3/3]の説明も読んでおくといいですね。
[G/標準]を選択すると、数字は数値に、日付は日付形式の値に、その他の値は文字列に変換されます。
文字列を選択せずに取り込んだ場合
ちなみに、[データ形式]で[文字列]を選択せずに取り込むと以下のようになります。
取り込み元のテキストのデータに先頭に0がつく文字列がないか、[1-1]や[1/2]などと入力されたものがないかを確認してください。
データの取り込み
[データの取り込み]ダイアログボックスが表示されます。
ここでは、データを取り込む位置を指定します。
既定では、[既存のワークシート]が選択されています。
取り込み先のセルを[A1]以外のセルに指定したい場合は、クリックしてセルを指定します。
指定したセルを起点にして取り込まれます。
また、[新規ワークシート]に取り込むこともできます。確認したら、[OK]ボタンをクリックします。
以下のようにテキストファイルのデータが取り込まれます。
[商品コード]と[商品番号]は、文字列になっています。
列幅を調整しないで取り込むには
既定では、テキストファイルを取り込むとセル幅が自動的に調整されますが、調整せずに取り込むこともできます。
[データの取り込み]ダイアログボックスの[プロパティ]をクリックします。
[外部データ範囲のプロパティ]ダイアログボックスが表示されますので、[データのレイアウト]にある[列の幅を調整する]のチェックボックスをオフにします。
参考テキストファイルの取り込みをする場合の注意点は、以下の記事でも解説しています。
ボタンの位置などが分からない場合は、参考にしてください。
CSVファイルをExcelで開くには(Excel2003)
CSVファイルをExcelで開くときの注意点(Excel2007)
Microsoft 365のExcelには、自動データ変換の設定があります。
先頭にゼロが付くCSVファイルをダブルクリックで開くとメッセージウィンドウが表示されるようになっています。
[開く]ダイアログボックスで開く場合も、メッセージウィンドウが表示されます。
オプションで「CSVの先頭の0を自動で変換しない」設定ができる
先頭の0が消えてしまった時はTEXT関数が便利
すでに手遅れで、セル先頭の0が消えてしまった場合は、TEXT関数を使用すると便利です。
=TEXT(値,表示形式)
表示形式に"0000"と指定すると、先頭に0を付けた4桁の文字列になります。
TEXT 関数 - Microsoft サポート(Microsoft)
取り込み元のテキストファイルの変更を反映させるには
取り込み元のテキストファイルに変更があった場合に、そのデータを取り込んだExcelのワークシートに反映させる場合の方法です。
データを取り込んだワークシートを開いて、[データ]タブの[接続]グループにある[すべて更新]のアイコン部分をクリックします。
参考ブック内で複数の外部データとの接続がある場合、[すべて更新]をクリックすると、ブック内のすべての外部データの接続が更新されます。特定のデータのみ更新したい場合は、[更新]をクリックしてください。
ポップヒントで分かりますが、ショートカットキーは以下のとおりです。
- すべて更新[Ctrl]+[Alt]+[F5]
- 更新[Alt]+[F5]
[テキストファイルインポート]ダイアログボックスが表示されます。
取り込んだテキストファイルを選択して、[インポート]をクリックします。
変更されたデータが反映されます。
外部データとの接続を解除する方法
外部データの接続を解除したい場合の方法です。
[データ]タブの[接続]グループにある[接続]をクリックします。
ポップヒントには、以下のように記されています。
接続
ブックのすべてのデータ接続を表示します。
データ接続とは、このブックの外にあるデータへのリンクであり、元のデータが変更されると、このデータも更新されます。
[ブックの接続]ダイアログボックスが表示されます。
接続を解除したい名前を選択して、[削除]ボタンをクリックします。
メッセージウィンドウが表示されますので、[Ok]ボタンをクリックします。
接続を削除すると、このブックがデータソースから分離され、ブックのデータの更新が正しく機能しなくなります。接続を保持する場合は[キャンセル]をクリックしてください。接続を削除する場合は[OK]をクリックしてください。
[ブックの接続]ダイアログボックスは、以下のようになります。
参考データの接続が解除されただけで、Excelに取り込んだデータはそのままです。
ただ、取り込み元のテキストファイルのデータに変更があっても、更新されなくなります。
参考Accessのデータも同じように取り込むことができます。
-
AccessのテーブルやクエリのデータをExcelのワークシートに取り込む
Accessで作成されたテーブルやクエリのデータをExcelのワークシートに取り込む方法です。 Accessのデータを接続しないで取り込む方 ...
タブ区切りのテキストファイルは、[ファイルを開く]ダイアログボックスから開くこともできます。
-
タブやカンマで区切られたテキストファイルをExcelで開くには
Excelでテキストファイルを開くには、テキストファイルウィザードを使います。 テキストファイルウィザードは、[ファイルを開く]ダイアログボ ...
Accessでテキストファイルをインポートする方法も解説しています。
-
テキストファイルのデータをインポート(定義ファイルの保存も可能)
Accessでテキストファイルをインポートするには、[テキストインポートウィザード]を使用します。 ウィザードにしたがって、テキストファイル ...
UTF-8のCSV形式で保存するには
Excel2016以降は、CSV(UTF-8)がサポートされています。
[名前を付けて保存]ダイアログボックスの[ファイルの種類]のプルダウンを開くと、[CSV UTF-8(コンマ区切り)(*.csv)]が見つかります。
CSVファイルがUTF-8で保存できるようになったわけです。
従来の[CSV(コンマ区切り)(*.csv)]もあります。もし、以下と同じように表示されない場合は、バージョンアップをしてみてください。
参考メモ帳も既定の文字コードが[UTF-8]になっています。
-
メモ帳の既定の文字コードが[UTF-8]に(ショートカットキーも追加)
Windows 10の進化に伴って[メモ帳]の機能も充実してきました。 バージョン1903では、既定の文字コードが[UTF-8]に変わりまし ...