【发布时间】:2018-05-23 02:38:14
【问题描述】:
我正在尝试将 Excel 范围复制到 .txt 文件。
导出成功,除了一个例外,它在末尾添加了一个“extra”空行。
我已经阅读并测试了 SO(和其他网站)上的许多解决方案,但仍然没有任何成功。
我的代码(相关部分)
' === Export to the .txt file ===
Dim TxtFileName As String, lineText As String
TxtFileName = ThisWorkbook.Path & "\Inv_" & Format(Date, "yyyymmdd") & ".txt"
Open TxtFileName For Output As #1
With StockSht
For i = 1 To LastRow
For j = 1 To 3
If j = 3 Then
lineText = lineText & .Cells(i, j).Value2
Else ' j = 1 or 2
lineText = lineText & .Cells(i, j).Value2 & vbTab
End If
Next j
Print #1, lineText
lineText = ""
Next i
End With
Close #1
我的 StockSht(工作表对象)和 LastRow 定义正确,并获得了它们的值。
导出的 .txt 文件结尾的屏幕截图
【问题讨论】:
-
为什么不直接将工作表保存为txt文件并跳过逐行打印?
-
@ScottCraner 不确定我是否在关注你
-
对不起,我帮不上忙。我假设您逐步完成了代码以确保 lastrow 是您期望的行?
-
@ScottCraner 是的,模拟太多了。此外,在 SO 和其他网站上测试了多个解决方案,但仍然没有
标签: vba excel export-to-csv export-to-text