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

プログラムの初心者です。
困ってます。お教え下さい。

VBA上の制御で、あるテキストファイルのデータをコピーして、
別のテキストファイルに貼り付けして、別保存したいのですが、
分かりません。

テキストファイルを開くだけでしたらできたのですが、
それからが・・・・
Call Shell("C:\WINNT\system32\notepad.exe c:\text1.txt")

すいません、お教え下さい。

A 回答 (4件)

何のVBAをお使いでしょうか?



単純に内容を別ファイルにするなら「COPY 元ファイル 新ファイル」で
コピーできそうに思います。

開いて内容を編集して、という場合は別処理が必要ですが
Excel、Word、ACCESSなど、利用可能なオブジェクトが異なります。
    • good
    • 0

vbaの関数であればOPEN文、PRINT文、WRITE文、INPUT文、LINE INPUT文


この程度を理解すれば対応できると思います。
ヘルプを調べてみればよいでしょう。

この回答への補足

ご指摘の通りしてみました。
しかし、この方法だと複数のテキストを一つに
まとめれないんですが、できるのでしょうか?

ちなみに、こんな感じで作ってみました。

Open "c:\text.txt" For Output As #2
Open "c:\text1.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, TextLine1
Print #2, TextLine1
Loop
'
Close #1
Open "c:\text2.txt" For Output As #3
Do While Not EOF(2)
Line Input #3, TextLine2
Print #2, TextLine2
Loop
'
Close #2
Close #3

補足日時:2001/06/12 11:56
    • good
    • 0

1~10のファイルを一つのファイルにしたいということですか?


であれば

関数として
Function AppendFile(InputFile as string,Fp as Integer) as Integer
dim Fp2 as Integer

Fp2 = freefile
OPEN InputFile for Input As fp2
Do While Not EOF(fp2)
Line Input #fp2, TextLine1
Print #fp, TextLine1
Loop

close fp2

End Function
を作成して

呼び出し側
sub Main()
dim Fp as Integer
dim rtn as integer

Fp = freefile
OPEN "最終ファイル" for Output As fp

rtn = AppendFile("file1.txt",fp)
rtn = AppendFile("file2.txt",fp)
rtn = AppendFile("file3.txt",fp)
rtn = AppendFile("file4.txt",fp)




close fp

end Sub
とするのかな

DOSのコマンドを呼び出しするなら
shell("COPY FILE1.TXT+FILE2.TXT+FILE3.TXT 結合ファイル名")
    • good
    • 0

どのような処理を最終的にご希望かわかりませんが、


以前私が作ったマクロを紹介します。

http://wordvba.cocolog-nifty.com/blog/2009/06/po …

こちらのブログに掲載してあるのですが、フォルダ内の
全ての(複数の)ワード文書をひとつのワード文書に
コピペするマクロです。

ブログの説明にも記載していますが、プログラム文を
変更すれば、テキストファイルにも対応します。

もしかしたら参考になるかと思いました。
テンプレートをダウンロードすれば、コードはそのまま
読めますので、ご参考まで。

参考URL:http://wordvba.cocolog-nifty.com/blog/
    • good
    • 0

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