Excelで複数のテキストファイルを1枚のシートに追加する方法

このQ&Aのポイント
  • Excelを使用して複数のテキストファイルを1枚のシートに追加する方法について教えてください。
  • テキストファイルが複数ある場合、A列に共通の値があり、B列にそれぞれ異なる値が入っています。これらをまとめて表にする方法を教えてください。
  • 50個程度のテキストファイルを1つのシートに追加し、共通の値とそれぞれの値を表にまとめたいです。VBAや別のソフトを使用することも構いません。
回答を見る
  • ベストアンサー

Excelで複数のテキストファイルを1枚のシートに

Excelで複数のテキストファイルを1枚のシートに追加したいのですが可能でしょうか? VBAや別ソフトを複数使ってもかまいません。 2列のテキストファイルが複数ありA列目は共通でB列目がそれぞれ異なります。 data01.txt、data02.txt…と50ぐらいのファイルがあり、それぞれ A  B 10 1.24 20 2.56 30 2.46 :  : となっています。これをひとまとめにして A      B     C ・・・ data01  data02   data03・・・ data50 10     1.24    1.35 ・・・ 2.24 20     2.56    2.22 ・・・ 1.34 30     2.46    3.23 ・・・ 5.45 :       :      : といった表にしたいのです。 お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

こんにちは、参考に Sub Test()   Dim CN As New ADODB.Connection '参照設定 Microsoft ActiveX Data Objects 2.8 Library   Dim RS As ADODB.Recordset   Dim myPath As String   Dim FN As String, i As Long   myPath = "G:\" 'Txtファイルが置かれているパス   CN.Provider = "Microsoft.Jet.OLEDB.4.0"   CN.Properties("Extended Properties") = "Text;HDR=NO"   CN.ConnectionString = myPath   CN.Open   For i = 1 To 50     FN = "data" & Format(i, "00")     Cells(1, i + 1).Value = FN     If i = 1 Then       Set RS = CN.Execute("SELECT * FROM " & FN & ".txt")       Cells(2, 1).CopyFromRecordset RS     Else       Set RS = CN.Execute("SELECT F2 FROM " & FN & ".txt")       Cells(2, i + 1).CopyFromRecordset RS     End If   Next   RS.Close: Set RS = Nothing   CN.Close: Set CN = Nothing End Sub

その他の回答 (1)

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

とりあえず、.txtファイルをエクセルで開いてみて、だめなら拡張子の.txtを.csvに変更してからエクセルで開いて、各シートとデータをマウスクリックで引用してみては。

shfuqu5uk
質問者

お礼

回答ありがとうございます。 txtファイルをexcelで開くこと自体は問題ありません。 複数のファイルを1枚にまとめたいのです。 data01.txtをexcelで開くと A列 B列 10 1.24 20 2.56 30 2.46 :  : という2列 x 数百行の表になります。同じくdata02.txtは A列 B列 10 1.35 20 2.22 30 3.23 :  : という表になります。この様なファイルが50あって、ちなみに50番目のdata50.txtは A列 B列 10 2.24 20 1.34 30 5.45 :  : となっていて、それを補足にあるような1枚の表にしたいのです。 (A列は共通でB列以降が各ファイルのB列をファイル名の順に追加した状態)

shfuqu5uk
質問者

補足

すみません。質問が間違っていました。 修正します。 A      B     C   ・・・       data01  data02 ・・・ data50 10     1.24    1.35 ・・・ 2.24 20     2.56    2.22 ・・・ 1.34 30     2.46    3.23 ・・・ 5.45 :       :      :    : といった具合にC列以降にそれぞれのファイルのB列部分だけを追加していきたいのです。

関連するQ&A

  • エクセルの各シートに複数のテキストファイルを取り込むには?

    はじめまして。データの整理で困っています。 お力をお借りできたらと思います。 複数のテキストファイルがあります。 これらをエクセルのシートに取り込み、 各シート名を取り込んだファイル名としたいのですが、 何か良い方法はないでしょうか? 例えば、 No1_1001_1.txt、No1_1001_2.txt、No1_1002_1.txt、... というファイル群を Data_No1.xls のSheet1 <- No1_1001_1.txt Data_No1.xls のSheet2 <- No1_1001_2.txt Data_No1.xls のSheet3 <- No1_1001_3.txt ... というようにしたいのですが。よろしくお願いします。

  • 複数のテキストファイルをひとつのエクセルシートにまとめるには?

    複数のテキストファイル(.txt)をエクセルのひとつのシートにまとめるにはどうすればいいですか? またその際、個々のテキストファイルのファイル名を本文の前に挿入したいのですが、 そのやり方も教えていただけると助かります。 ただ、フリーソフトを使わずエクセルの機能だけでやりたいのでよろしくお願いします。 ↓のような感じにしたいです。 ------------------------------------------- test1.txt data data data data data data data data data data data data data data data data data data data test2.txt data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 data2 ------------------------------------------- Sheet1 現在、一つ一つのテキストファイルの名前をF2で選択してセルに貼り付け、 テキストファイルを開いて本文を前文コピーして貼り付け、というやり方でやってますが、 非常に時間がかかって困っています。 よろしくお願いします。

  • PHPで複数のテキストファイルを読み込みたい

    PHPを勉強中です。 どうしても自力で解決できないので助けてください。 やりたい事は、 「複数ファイルの内容を読み込み、  それらのデータをcsvのセルに入れたい。」のです。 Aというフォルダに、複数のテキストファイルがあります。 これら各ファイルの内容をそれぞれ取得して 「○○.csv」のB列に上から順々に書き込んでいきたいのです。 Aフォルダに入っているテキストファイルは連番を想定しています。 A/ 0001.txt 0002.txt 0003.txt : フォルダに入っているテキストファイルの数はいろいろです。 3枚のフォルダもあれば100枚のフォルダもあります。 これらのファイルの内容を、それぞれ取得して 用意されているcsvファイルの特定のセルに テキストファイルの数だけ順番に入れていきたいのです。 ○○.csv A列  |  B列  |  C列  | △  |0001.txt内容|  △  | △  |0002.txt内容|  △  | △  |0003.txt内容|  △  | : : プログラムのヒントを教えていただければ嬉しいです。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • Excel VBAで列ごとのデータをテキストファイルへ書くには?

    エクセルのシート(たとえばSheet1)が以下のようになっているとします。 A B C D E F 1 商品A 11111111 あいうえお 3 1000 2 商品B 22222222 かくくけこ 1 2500 3 商品C 33333333 さしすせそ 2 3500 ・ ・ これを決まった列ごとにテキストファイル(固定ファイル名)に書き出すということは、エクセルのVBAで可能でしょうか? テキストファイルの内容は以下のようにしたいのです。 E列を数量として、その分だけのテキスト行を書き出したいのですが… <<bbb.txt>> 商品A 商品A 商品A 商品B 商品C 商品C ・ ・ <<ccc.txt>> 11111111 11111111 11111111 22222222 33333333 33333333 ・ ・ <<fff.txt>> 1000 1000 1000 2500 3500 3500 ・ ・ また、このようなことが参考になるHPがあればお教え願いたいのですが。 以上よろしくお願いします。

  • エクセルの各シートに複数のtxtファイルを取り込む

    Excel2013を用いたデータ整理をしているのですが,複数のファイルを扱う上でマクロを用いた効率化をしたいと思い,質問させていただきました. いま,Folder1 というフォルダに,text1 から text40 までの 40個のtxtファイルがあります. これらのファイルを,エクセル上であらかじめ作成してある Sheet1 から Sheet40 にそれぞれ貼り付けたいと考えています. txtファイルは,4列で構成されており,タブでそれぞれ区切られています. 行数は20,481行です. txtの中には,0 の値が入った箇所もあるため,その情報が消えないで貼り付けられると望ましいです. また,タブのところでしっかり区切られ,違うセルに貼り付けられると,ありがたいです. 質問は以上です. お手数ですが,よろしくお願いします.

  • エクセル複数ファイルを一つのシートに…

    エクセルのsheet1に縦に800個ほどのデータが並んでおります。それらのデータファイルが40個ほど一つのフォルダに保存されています。それらのデータを一つのエクセルのシートにまとめたいのですがどうしたらよいでしょうか?例えばA列にはブック1のデータB列にはブック2のデータというようにしたいのですが…

  • 複数のテキストファイルをエクセルに貼りつける方法

    ディスクトップに、ひとつのフォルダがあるとします。 そのフォルダを開くと、 フォルダ1、フォルダ2、フォルダ3、フォルダ4とこのような感じでフォルダがあり、さらに各フォルダには、複数のテキストファイルが入っています。 現在、エクセルのA列にフォルダ名、B列にtxtファイル名、C列にtxtファイルの内容を手動で貼りつけるといった作業を行っているのですが、数が多いためしんどいです。 何か楽にできる方法はないでしょうか? よろしくお願いいたします。

  • (VBA)フォルダの中の複数のテキストファイルをエクセルに取り込みたい

    フォルダの中に複数のテキストファイルがあります。 それをVBAで1シートに1テキストファイルづつで取り込んで(区切り文字(#)、列のデータ形式(文字列)を指定して)作成済みのマクロを実行し、出力させたいのですが。。 データが大きいので5シートで1つのファイルにしたいです。フォルダの中にはテキストファイルが100ほどあるので、結果、エクセルファイルが20できればいいのですが。。 できればデスクトップに新しいフォルダが作成されてその中に出力されていくようにしたいです。 お力を貸してください。よろしくお願いします。

  • テキストデータを開いて指定したエクセルシートに貼り付ける方法

    質問です。テキスト形式で保存したデータが約500あります。 以後 ・テキストデータをテキスト1~テキスト500と呼びます ・貼り付けたいエクセルシートをシートと呼びます 1.まずテキスト1をエクセルで開きます 2.そしてエクセルで開いた、例えばB12~B18までのデータを   シートのA1~A7に貼り付けます 3.次にテキスト2をエクセルで開き、今度はB12~B18までのデータを   シートのB1~B7に貼り付けます 4.この作業を続けてテキストデータ500個を1つのエクセルシートに  順々に貼り付けていくにはどうすればいいでしょうか? 上記の操作において、エクセルで開いたテキストデータから抽出するデータの位置(アドレス?)はすべて同じです。上記の場合はB12~B18です。問題はエクセルシートに、テキストデータ1はA列に、2はB列に、3はC列にという様に貼り付けていく方法が知りたいです。 一つ一つやっているのですが、気が遠くなります。何かいい方法があればよろしくお願いします。

  • エクセルのセルをテキストファイル出力する方法教えてくれませんか。

    初心者ですが、 どなたか、エクセルのセル1つを、 テキストファイル出力できる方法をご存知ですか? 詳細には、 エクセルファイルの列Aの内容がテキストファイル名で、 列Bの内容が本文であるテキストファイル出力を 約3000個、順次したいと考えています。 例えば、エクセルファイルに以下のようなデータを保持しているとします。 列A  列B 001  あいうえお 002  かきくけこ 003  さしすせそ この場合、001.txtは本文が「あいうえお」、 002.txtは本文が「かきくけこ」、 003.txtは本文が「さしすせそ」というように、 エクセル1行についてテキストファイルを1つ作成したいと考えています。 このような処理を短時間で実施するのに適した方法をご存知の方がいらっしゃいましたらご教示いただければと思います。 どうぞよろしくお願いいたします。

専門家に質問してみよう