定型書式のテキストファイルをExcelに取り込む方法
- 定型書式のテキストファイルをExcelに取り込む方法を教えてください。
- 質問者は、定型書式のテキストファイルから特定のテキストを抽出してExcelの特定のセルに取り込みたいと考えています。
- テキストファイルの体裁は変更できないため、適切な抽出方法を知りたいとのことです。
- ベストアンサー
定型書式のテキストファイルをExcelに取り込むマクロについて
以下のような定型書式のテキストファイル(ファイル名はdata(連番).txt。Shift-JIS。改行コードLF)から、 ・<h2>~</h2>で囲まれたテキストのうち、改行やコメントを取り除いたもの(あああああああ) ・<!--コメント2-->直後の、最初の「DAT」に続く文字列(いいい) を、ExcelのC列、D列に取り込みたいのですが、抽出方法がよくわかりません。 なお、テキストファイルの体裁は一切変更できません。 ------------------------- data1.txt …… <h2> <!--コメント1--> あああ ああああ <!--コメント終了--> </h2> <!--コメント2--> DATいいいDATDうううDDATえええ …… -------------------------
- hogenyam
- お礼率43% (20/46)
- その他(プログラミング・開発)
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
テキストファイルを1行ずつ読み込んで、必要な行に対してC・D列へ書き込むようにする。 仮にシートにこのデータがあった場合に、上記作業コードがくめるのであれば、 それを提示してみては? あとはテキストファイル関係を修正する位でしょうか。
関連するQ&A
- C#のテキストファイル読み込みについて
C#のテキストファイル読み込みについて 2次元配列を使います(a[行][列]みたいに テキストファイルを1文字ずつ読み込みます。 そして、改行文字が見つかると行を1つずらします それを繰り返して最後まで読みこむと終わり そんなことをしたいです DOBON.NETでこんなの見つけたんですが 上の処理をしようと思っても、どこをいじればできるのかわかりませんでした //"C:\test.txt"をShift-JISコードとして開く System.IO.StreamReader sr = new System.IO.StreamReader( @"C:\test.txt", System.Text.Encoding.GetEncoding("shift_jis")); //内容を一行ずつ読み込む while (sr.Peek() > -1) { Console.WriteLine(sr.ReadLine()); } //閉じる sr.Close(); よくわかるサイトとかあったら教えてください、お願いします
- ベストアンサー
- C・C++・C#
- 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で複数のテキストファイルを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 : : : といった表にしたいのです。 お願いします。
- ベストアンサー
- その他MS Office製品
- エクセルのマクロでテキストファイルを生成するには?
いつもお世話になっております。 マクロで エクセルのSheet1上のA1:A5のデータをコピーして 『吐き出し.txt』というテキストファイルを生成したいのです。 どのようなマクロを書けばよいかご教示ください。 通常の「txt形式で保存」ですと、 データ内に「,」があるため、 テキストファイルだとデータの両端に「"」がついてしまうため 不具合が発生するのです。 なんとかなりませんでしょうか。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Excelマクロ テキスト貼り付け
テキストファイル(*.txt)を開き、A1に貼り付けるマクロを教えてください。 B列には計算式があるため、A列にテキストの内容を貼り付けたいです。 また、テキストのファイル名はランダムなため、 フォルダを開いて、テキストを開きたいのですが教えてください。
- ベストアンサー
- その他MS Office製品
- テキストファイルを1行ずつ別のファイルに分割する
400行ぐらいのテキストファイルを、1行ずつ別のファイルに分割したいと思います。 ファイル名は**001.txtのように、(**は任意の文字列、数字は連番)なってくれれば嬉しいです。 どなたかこのような処理のできる簡単な方法をご存じないでしょうか? よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- ワークシートの内容をテキストファイルに書き込む際に、テキストファイルでは改行が”↑”と表示されるだけで困っています
エクセルのデータをテキストファイルに出力させたいのですが、テキスト出力の際に"↑"が表示されるだけで改行がうまくできません。 マクロの組み方でアドバイスをいただけないでしょうか? ------------------------------ <↓具体的に、、、、。> ・エクセルデータは、同一セル内に改行させたデータがあります。 列A 列B 行1 No,1 1-111111 1-1111 行2 No,2 2-2222 ←セル"B1"と"B2"のデータを 2-22222 テキストでも改行させて表示したい。 ・テキストでは、下記のように出力させたい ◆No,1 1-111111 1-1111 ◆No,2 2-2222 2-22222 ---------------------- <↓私が試しているコードです。> 'Test.txt 開く Open "C:\Test.txt" For Output As #File_Number '列Aのセルに空白文字列が入るまで、処理を繰り返す i = "3" Do While Worksheets("sheet1").Cells(i, 1) <> "" Print #File_Number, "◆" & Cells(i, 1) Print #File_Number, Cells(i, 2) i = i + 1 Loop 'Test.txt を閉じる Close #File_Number このマクロだとテキストでは ◆No,1 1-111111↑1-1111 ◆No,2 2-2222↑2-22222 となります。 アドバイスの程、よろしくおねがいします。
- ベストアンサー
- Windows系OS
- 1バイトのみのテキストのエンコーディング
「Googleサイトマップ」用にテキスト形式のサイトマップファイルをアップロードしたところ、文頭に何か2バイト付加されてエラーになりました。 MAC OS9でJedit3からUTF-8/LFで保存したもので、サイトのURLを羅列しただけの内容です。 WINDOWSのK2EditorでUTF-8Nにして再送信しましたが、まだGoogleが確認していません。 そこで大変基本的(初歩的)な疑問ですが、1バイトASCII文字のみのテキストファイルをUTF-8エンコーディングで保存して再度開くとエンコーディングはどうなるのでしょうか? 改行コード(CR/LF)はShift-JISと同じ(0D/0A)なのでしょうか。そうだとすると保存するときの「漢字コード」がShift-JISでもUTF-8でも2バイト文字を含まない場合は結果(ファイルの内容)は同じになるのでしょうか? テキストファイルの内容(漢字コードや制御文字)を見るツールなんてものがあるのでしょうか。
- ベストアンサー
- その他([技術者向] コンピューター)
- ファイル操作について、テキストファイルの書き換え
よろしくお願いします。 データファイルAからデータを取得して、テキストファイルBの内容の一部を取得したデータで書き換えるという操作を行うプログラムを作りたいです。 具体的には、 データファイルA[A.txt]の中身 111 222 333 444 テキストファイルB[B.txt] 文字列1="123" 文字列2="234" 文字列3="345" 文字列4="456" というような二つのファイルを読み込み、B.txtの""で囲まれた部分を、A.txtで取得したデータで置き換えるような操作を行いたいのですが・・。 使用する言語としてはスクリプト言語であるperl、もしくはプログラム作成経験があるCを使用しようと思っています。(perlは未経験で入門書を読んでいるレベル)
- ベストアンサー
- Perl
- エクセルのセルをテキストファイル出力する方法教えてくれませんか。
初心者ですが、 どなたか、エクセルのセル1つを、 テキストファイル出力できる方法をご存知ですか? 詳細には、 エクセルファイルの列Aの内容がテキストファイル名で、 列Bの内容が本文であるテキストファイル出力を 約3000個、順次したいと考えています。 例えば、エクセルファイルに以下のようなデータを保持しているとします。 列A 列B 001 あいうえお 002 かきくけこ 003 さしすせそ この場合、001.txtは本文が「あいうえお」、 002.txtは本文が「かきくけこ」、 003.txtは本文が「さしすせそ」というように、 エクセル1行についてテキストファイルを1つ作成したいと考えています。 このような処理を短時間で実施するのに適した方法をご存知の方がいらっしゃいましたらご教示いただければと思います。 どうぞよろしくお願いいたします。
- 締切済み
- Visual Basic
お礼
すみません。MATCH,ADDRESS,INDIRECT関数で解決しました。ありがとうございました
補足
ファイルを行単位でExcelのセルにインポートすることまではできましたが、 <h2>の手前の形式が自由体裁なので、インポートファイルによって、<h2>が出る行位置がバラバラです。(あるセルは150行目、あるセルは160行目となるなど)なので、VLOOKUP関数で同じように取り出しようがありません… <h2>の存在するセルを検索して、そのセルの1つ下のセルから6つ下のセルまでの値を取り出すような関数はありませんか?