dポイントプレゼントキャンペーン実施中!

エクセルVBAのprintステートメントについて

エクセルVBAからテキストファイルに文字列を書き出す場合、output権限でテキストファイルを開いて、printで一行ずつ書き出すということをやっています。この際、テキストファイルの最終行の次の行に一行を書き出すのではなく、最終行の最後に追記することはできますでしょうか。
例えば、下記のようなテキストファイルの場合、cccの次の行に書き出すのではなく、
cccの直後に文字列を書きたいのです。
よろしくお願いします。

ファイルの始まり
aaa
bbb
ccc
<EOF>

--
エクセル2003

A 回答 (4件)

Printするときに改行させないようにすれば良いのではないでしょうか?



Print #1, ccc;

とPrintステートメントの最後をセミコロンにすれば改行されません。
改行が必要な場合には

Print #1, vbCrLf;

と明示的に改行を出力します。
    • good
    • 0
この回答へのお礼

できました!ありがとうございました!

お礼日時:2010/06/24 20:46

cccをPRINTした直後に


もう一回PRINTすればいいんじゃないの?

その後にCLOSEする。
    • good
    • 0

テキストファイルの書き出しにおいて、Appendモードというのが、昔のBASICからVBである(Javaなどにもある。

FSOのFileSystemObject.OpenTextFile(filename[, iomode[, create[, format]]])のimodeもそうである
ーー
これをWEBで調べるべき問題ではないかな。沢山記事がある。
また本質問は、質問者はたまたまVBAを使っているのだろうが、Printなどは、エクセルVBAの問題(質問ではなく)Basicの問題だろう。
    • good
    • 0
この回答へのお礼

ありがとうございます。参考にします。

お礼日時:2010/06/24 20:40

cccの直後(改行せずに)という事であれば、


cccと文字を結合してまとめて書き出せばいいと思いますけど。

EOFの後にって話じゃないですよね?
    • good
    • 0
この回答へのお礼

ありがとうございます。
できれば、cccを書いた後に、さらにcccの後ろに追記したいのです。

お礼日時:2010/06/24 14:37

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