ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Remove last CRLF in text file (https://www.excelbanter.com/excel-programming/386353-remove-last-crlf-text-file.html)

[email protected]

Remove last CRLF in text file
 
Hi there,

I want to write a string from VBA into a text file. This file is an
input file for an Unix application, i.e. LF as the last character in a
file.
The Print statement does put me a CRLF at the end of every line. I got
around this problem to first concatenate the whole string with the
chr(13) LF and at the end write it into file.
This leaves me one CRLF at the very end of the file.

How do I get rid of this?
I tried to shorten the string by one character but than the string is
too short.
I re-read and re-wrote the file omitting the last line. No way. No
idea.

Any help is appreciated.
S.


Tom Ogilvy

Remove last CRLF in text file
 
Look in Excel VBA help at the Put command.

--
Regards,
Tom Ogilvy


" wrote:

Hi there,

I want to write a string from VBA into a text file. This file is an
input file for an Unix application, i.e. LF as the last character in a
file.
The Print statement does put me a CRLF at the end of every line. I got
around this problem to first concatenate the whole string with the
chr(13) LF and at the end write it into file.
This leaves me one CRLF at the very end of the file.

How do I get rid of this?
I tried to shorten the string by one character but than the string is
too short.
I re-read and re-wrote the file omitting the last line. No way. No
idea.

Any help is appreciated.
S.



Vergel Adriano

Remove last CRLF in text file
 
Perhaps use the Replace function to remove the CR character.

Replace(textwithCRLF, chr(10), "")

--
Hope that helps.

Vergel Adriano


" wrote:

Hi there,

I want to write a string from VBA into a text file. This file is an
input file for an Unix application, i.e. LF as the last character in a
file.
The Print statement does put me a CRLF at the end of every line. I got
around this problem to first concatenate the whole string with the
chr(13) LF and at the end write it into file.
This leaves me one CRLF at the very end of the file.

How do I get rid of this?
I tried to shorten the string by one character but than the string is
too short.
I re-read and re-wrote the file omitting the last line. No way. No
idea.

Any help is appreciated.
S.



Tom Ogilvy

Remove last CRLF in text file
 
I believe he is saying the Print is putting the CRLF, so you can't use
replace on the newly written file and doing it before writing the file
wouldn't address the problem.


The OP could also try

Print #1, strng;

instead of
Print #1, strng

or if he needs a LF on the end

Print #1, strn & vbLf;


--
Regards,
Tom Ogilvy




"Vergel Adriano" wrote:

Perhaps use the Replace function to remove the CR character.

Replace(textwithCRLF, chr(10), "")

--
Hope that helps.

Vergel Adriano


" wrote:

Hi there,

I want to write a string from VBA into a text file. This file is an
input file for an Unix application, i.e. LF as the last character in a
file.
The Print statement does put me a CRLF at the end of every line. I got
around this problem to first concatenate the whole string with the
chr(13) LF and at the end write it into file.
This leaves me one CRLF at the very end of the file.

How do I get rid of this?
I tried to shorten the string by one character but than the string is
too short.
I re-read and re-wrote the file omitting the last line. No way. No
idea.

Any help is appreciated.
S.



[email protected]

Remove last CRLF in text file
 
Replacing did not work.

But the semikolon did the trick.
Print #1, strng;

It omitted the CRLF at the end.
So I concatenated the string with a vbLn and then put a semikolon at
the end and I get what I want.
Print #1, strn & vbLf;


Many Thanks
S.

On 28 Mrz., 14:26, Tom Ogilvy
wrote:
I believe he is saying the Print is putting theCRLF, so you can't use
replace on the newly written file and doing it before writing the file
wouldn't address the problem.

The OP could also try

Print #1, strng;

instead of
Print #1, strng

or if he needs a LF on the end

Print #1, strn & vbLf;

--
Regards,
Tom Ogilvy

"Vergel Adriano" wrote:
Perhaps use the Replace function to remove the CR character.


Replace(textwithCRLF, chr(10), "")


--
Hope that helps.


Vergel Adriano


" wrote:


Hi there,


I want to write a string from VBA into a text file. This file is an
input file for an Unix application, i.e. LF as the last character in a
file.
The Print statement does put me aCRLFat the end of every line. I got
around this problem to first concatenate the whole string with the
chr(13) LF and at the end write it into file.
This leaves me oneCRLFat the very end of the file.


How do I get rid of this?
I tried to shorten the string by one character but than the string is
too short.
I re-read and re-wrote the file omitting the last line. No way. No
idea.


Any help is appreciated.
S.





All times are GMT +1. The time now is 11:53 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com