3

我想将 Excel 工作表转换为多个文本文件。该工作表包含两列:

  • A 列给出了生成的文本文件的名称
  • B 列提供内容 - 包含单元格内的换行符

使用以下代码进行转换,但不会将换行符导入文本文件 - 所有文本都在一行中:

Private Sub CommandButton1_Click()
    Dim oTxt As Object

    For Each cell In Ark1.Range("A1:A" & Ark1.UsedRange.Rows.Count)
        ' you can change the sheet1 to your own choice    
        saveText = cell.Text
        Open "H:\Webshop_Zpider\S-solutions" & saveText & ".txt" For Output As #1
        Print #1, cell.Offset(0, 1).Text
        Close #1
    Next cell
End Sub

有人可以帮我吗?

嗨,使用 Siddharths 建议的结果:包括换行符!但是所有生成的文件都没有按我的意愿命名和保存。所有文件的名称为 S-solutions 加上列 A 的内容(例如 S-solutionsS-4001-KT.txt)并保存在文件夹 H:\Webshop_Zpider 中。但是,我想要的是:文件名:列 A 的内容(例如 S-4001-KT.txt)和文件夹 H:\Webshop_Zpider\S-solutions。我该如何改变呢?谢谢。

4

2 回答 2

3

Replace this

Print #1, cell.Offset(0, 1).Text

with

Print #1, Replace(cell.Offset(0, 1).Value, vbLf, vbCrLf)

Also one Tip! Do not use .Text. Use .Value

于 2013-08-07T12:04:51.900 回答
0

首先你应该只打开一次文本文件而不是每个单元格然后你可以做

Print #1, cell.Offset(0, 1).Text & vbnewline

对于单元格文本和新行。

于 2013-08-07T12:03:47.050 回答