在Excel中从数据行创build文本文件

我在Excel中有一个450行左右的源电子表格。 每行有6列数据,我需要创build一个单独的文件从每行的文件名=列A和内容=列BG与他们之间的换行符。

例如,我正在尝试这个,但得到一个错误“文件未find”:

Sub DataDump() Dim X Dim lngRow As Long Dim StrFolder As String StrFolder = "/Users/danielfowler/Documents/_users_text_6.16" X = Range([a1], Cells(Rows.Count, 2).End(xlUp)) For lngRow = 1 To UBound(X) Open StrFolder & "\" & X(lngRow, 1) & ".txt" For Output As #1 Write #1, X(lngRow, 2) Close #1 Next End Sub 

我在StackOverflow中看到了这样的问题

  • 从Excel电子表格的每一行创build文本文件
  • 用ColumnA将每个Excel行写入新的.txt文件作为文件名
  • 使用VBA将Excel行输出到一系列文件名为空格的文本文件
  • 将Excel行输出到一系列文本文件

但是,这些解决scheme中的每一个都会为我带来不同的错误。 我正在使用Excel for Mac 2011,v14.4.2。

 Sub VBA_Print_to_a_text_file() Dim strFile_Path As String strFile_Path = "C:\temp\test.txt" 'Change as per your test folder path Open strFile_Path For Output As #1 Print #1, "This is my sample text" Close #1 End Sub 

这为每列输出一个文本文件,列A作为标题,列B到最后一列作为每个文件的内容。 您可以将目录更改为任何您想要的,但是目前它将文本文件保存到与Excel文件相同的目录中。 您也可以将文件扩展名更改为任何你想要的。

 Sub toFile() Dim FilePath As String, CellData As String, LastCol As Long, LastRow As Long Dim Filenum As Integer LastCol = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column LastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row For i = 1 To LastRow FilePath = Application.DefaultFilePath & "\" & Trim(ActiveSheet.Cells(i, 1).Value) & ".xpd" Filenum = FreeFile Open FilePath For Output As Filenum CellData = "" For j = 2 To LastCol CellData = Trim(ActiveSheet.Cells(i, j).Value) Write #Filenum, CellData Next j Close #Filenum Next i MsgBox ("Done") End Sub 

至于在每一行之间的rest,不幸的是我没有足够的经验知道如何做到这一点。