【问题标题】:How can I export data from an excel sheet to create a text file of cell data arranged into a specific format?如何从 Excel 工作表中导出数据以创建以特定格式排列的单元格数据的文本文件?
【发布时间】:2014-05-27 14:54:57
【问题描述】:

我对 Excel 并不太熟悉。我想知道是否有一种方法可以让我使用电子表格并从其数据中生成一个具有特定文本格式的新文本文件。我所拥有的是一张包含 200 多个国家/地区名称的表格。对于每一行,有 5 列,每列都包含一个超链接。我要创建的是每行的分组,格式如下:

行名称(国家/地区 1)
column2Title|row1Column2Link
column3Title|row1Column3Link
column4Title|row1Column4Link
column5Title|row1Column5Link

行名称(国家/地区 2)
column2Title|row2Column2Link
column3Title|row2Column3Link
column4Title|row2Column4Link
column5Title|row2Column5Link

等等,总共大约 200 个。如图所示,每个垂直条的左侧是每个分组中完全相同的文本,只是各自的列标题。右边是当前行的每一列中存在的内容。我对 VBA 很熟悉,但我可以自己编程,无需任何解释。

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    假设您的数据从 A1 开始,第一行是标题,并且您所在国家/地区的第一列没有空格,这应该可以工作(或至少给您要点):

    Sub write_stuff()
        Dim iFile As Integer
        Dim sFile As String
        Dim rLoop As Range, r As Range
    
        sFile = "C:\mytxtfile.txt"
        iFile = FreeFile
        Open sFile For Output As iFile
        For Each rLoop In Range("A2", Range("A1").End(xlDown))
            Print #iFile, rLoop
            For Each r In Range("B1", Range("A1").End(xlToRight))
                Print #iFile, r & "|" & Cells(rLoop.Row, r.Column)
            Next r
            Print #iFile, ""
        Next rLoop
    
        Close #iFile
        Set rLoop = Nothing
        Set r = Nothing
    End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-04
      • 1970-01-01
      • 2012-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-05
      • 1970-01-01
      相关资源
      最近更新 更多