将excel行导出到单个文本文件

时间:2018-03-02 11:31:05

标签: excel vba export range

我使用下面的VBA代码将Excel行导出到单个文本文件(文件名是B列)

Sub ExportTextFiles()

Dim i As Long
Dim LastDataRow As Long
Dim MyFile As String
Dim fnum

LastDataRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
For i = 1 To LastDataRow
    'The next line uses the contents of column B on the same row to name it
    MyFile = "C:\test\" & ActiveSheet.Range("B" & i).Value & ".txt"
    fnum = FreeFile()
    Open MyFile For Output As fnum

    Print #fnum, Format(Range("A" & i))
    Close fnum
Next i
End Sub

我的问题只是在文本中导出的行的255个字符。 有解决方法吗?

1 个答案:

答案 0 :(得分:1)

由于我无法找到明确文档的原因,当您使用未定义格式的Format函数时,它将只返回255个字符。

我不明白为什么你需要在Format语句中使用Print函数,但是如果删除它,255字符限制似乎就会消失。

我认为您唯一可能需要担心的是单元格内容限制为32,767个字符。