プロが教える店舗&オフィスのセキュリティ対策術

以下のようなテキストファイル結合を実現したいと思っています。

【ファイル1】
あいうえお
かきくけこ
さしすせそ

【ファイル2】
123
456
789

↓↓↓↓↓↓↓↓↓↓↓
【結合後】
あいうえお123
かきくけこ456
さしすせそ789

このように行単位でファイル1とファイル2の文字列を結合していきたい
のですが、VBAでこれを実現できますか?
VBAでなく、他の言語でも良いのですが、VBAが手っ取り早い感じがしたので…。

ご教授いただけますよう宜しくお願いします。

A 回答 (3件)

VBAででもVB6.0でも同じようにできます。

VB2005などでも。
全くファイル1と2がレコードの順序の対応が崩れてないなら、
ファイル1をオープン
ファイル2をオープン
アウトプットファイルをオープン(テキスト)
ーー
ファイル1のレコードの終わりまで(EOF)繰り返し
ファイル1を1レコード読む
ファイル2を1レコード読む
両者の文字列を前後に結合
アウトプットファイルを1レコード書き込む
ファイルの終わりまで繰り返し
ーー
終わると
ファイル1をクローズ
ファイル2をクローズ
アウトプットファイルをクローズ)
ーー
レコード終端コード(VbCrLf)はインプットレコード変数には入りませんので気にする必要なし。
しかし
カンマ区切りなどなら、両レコードの文字列を結合するとき、区切りを挟む必要gあります。
ーー
ファイル入出力は
昔ながらのBasic系のLine Input、printや
VBScript系のReadLine,WriteLineなどがあります
最近はStreamReader クラスを使用のようです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

簡単で分かりやすいご説明ありがとうございます。
今回はANo.1の方のソースで実現できたので、imogasi様のご回答は今後の
参考とさせていただきます。

ありがとうございました。

お礼日時:2007/07/26 09:05

こんにちは、



手っ取り早い方法

テキストファイルが、65536行以下なら、

テキストファイルを、エクセルで、開いて、
コピーペーストで、AカラムとBカラムに、ならべて
cカラムに、A&Bで、結合、

結合した文字だけの、テキストファイルを作りたければ、
結合したCカラムを新しいブックに、コピーペーストして、

ブック保存で、テキストファイルで、出力すると
言うのはどうですしょうか。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

テキストファイルは150万件ほどのデータなので、上記の方法が使えなかったのです。
データが少なければ上記の方法は簡単で良いですね。

ありがとうございました。

お礼日時:2007/07/26 09:02

定義部分は省略しますが、以下のような感じでできますよ。



open filename1 for input as #1
open filename2 for input as #2
open filename3 for output as #3

do until eof(1) and eof(2)
  a=""
  b=""
  if not eof(1) then line input #1,a
  if not eof(2) then line input #2,b
  print #3,a;b
loop

close

変数はすべて文字型として、filename1~2には読み込みファイル名、
filename3には書き出すファイル名を指定してください。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

非常にシンプルなソースで分かりやすく、やりたいことも実現できました!
最終的に3ファイルを結合したのですが、上記のソースをちょっといじっただけで
簡単に出来、非常に助かりました。

本当にありがとうございます。

お礼日時:2007/07/26 09:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!