Запретить файл .txt сохранить последнюю строку как пустую - PullRequest
0 голосов
/ 03 мая 2020

Это то, что у меня есть. Когда это сохраняется в файл .txt, я бы хотел, чтобы последняя строка была последней строкой текста, а не открытой строкой под ним. Пожалуйста помоги! Спасибо.

Sub ExportColB()
Dim myFileName As String, rng As Range, txt As String
myFileName = Application.GetSaveAsFilename(fileFilter:="Text Files (*.txt), *.txt")
If myFileName = "" Then Exit Sub
With Range("d3", Range("d" & Rows.Count).End(xlUp))
    If .Count < 2 Then
        txt = .Value
    Else
        txt = Join(Evaluate("transpose(" & _
        .Address(external:=True) & ")"), vbCrLf)
    End If
End With
Open myFileName For Output As #1
    Print #1, txt
Close #1
End Sub

Ответы [ 2 ]

0 голосов
/ 03 мая 2020

Вместо использования Print #1, txt для записи файла, который всегда будет добавлять CRLF в конец файла, попробуйте Print #1, txt;. Не забывайте точку с запятой.

0 голосов
/ 03 мая 2020

Пожалуйста, попробуйте эту поправку к вашему коду.

Print #1, Left(Txt, Len(Txt) - 2)

Кстати, ваш .Count не является свойством или методом объекта Range. Интересно, почему ваш код не взломал sh в этой строке. Это необходимо пересмотреть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...