- ベストアンサー
エクセルVBAのprintステートメントについて
エクセルVBAのprintステートメントについて エクセルVBAからテキストファイルに文字列を書き出す場合、output権限でテキストファイルを開いて、printで一行ずつ書き出すということをやっています。この際、テキストファイルの最終行の次の行に一行を書き出すのではなく、最終行の最後に追記することはできますでしょうか。 例えば、下記のようなテキストファイルの場合、cccの次の行に書き出すのではなく、 cccの直後に文字列を書きたいのです。 よろしくお願いします。 ファイルの始まり aaa bbb ccc <EOF> -- エクセル2003
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Printするときに改行させないようにすれば良いのではないでしょうか? Print #1, ccc; とPrintステートメントの最後をセミコロンにすれば改行されません。 改行が必要な場合には Print #1, vbCrLf; と明示的に改行を出力します。
その他の回答 (3)
- fujiponxx
- ベストアンサー率32% (186/580)
cccをPRINTした直後に もう一回PRINTすればいいんじゃないの? その後にCLOSEする。
- imogasi
- ベストアンサー率27% (4737/17069)
テキストファイルの書き出しにおいて、Appendモードというのが、昔のBASICからVBである(Javaなどにもある。FSOのFileSystemObject.OpenTextFile(filename[, iomode[, create[, format]]])のimodeもそうである ーー これをWEBで調べるべき問題ではないかな。沢山記事がある。 また本質問は、質問者はたまたまVBAを使っているのだろうが、Printなどは、エクセルVBAの問題(質問ではなく)Basicの問題だろう。
お礼
ありがとうございます。参考にします。
- fujiponxx
- ベストアンサー率32% (186/580)
cccの直後(改行せずに)という事であれば、 cccと文字を結合してまとめて書き出せばいいと思いますけど。 EOFの後にって話じゃないですよね?
お礼
ありがとうございます。 できれば、cccを書いた後に、さらにcccの後ろに追記したいのです。
お礼
できました!ありがとうございました!