【问题标题】:Exporting excel to csv when field on multiple rows多行字段时将excel导出到csv
【发布时间】:2013-11-01 18:07:24
【问题描述】:

我得到了一个 excel 电子表格来转换为 csv。问题是其中一个字段是描述字段,其中描述中的句子位于单独的行上。例如,第一个产品在第 1 行。描述的第一行在第 1 行,描述的第二行在第 2 行,该行中的所有其他列都是空的。大多数产品有大约 6 行描述。然后下一个产品从第 7 行开始。

我曾尝试导出数据,但 Excel 自然会在 csv 文件中的每个 excel 行中创建一行,因此大多数行都是空行,只有一句话描述(例如,、、、“句子 2”、、)

请问有没有办法解决这个问题?

谢谢

【问题讨论】:

    标签: excel export-to-csv


    【解决方案1】:

    解决此问题的一种方法是将所有描述行放入与其余字段相同的行中的单个单元格中,然后删除仅包含扩展描述的大部分空白行。

    假设您的电子表格在 A 列和 B 列中有产品信息,在 C 列中有描述字段,如下所示:

    在D1中,输入公式

    =C1
    

    在D2中,输入公式

    =IF(A2<>"",C2,D1&"/"&C2)
    

    将其填入 D 列的其余部分,生成以下内容:

    对于每个项目,D 列现在包含该项目最后一行的完整描述。现在我们要将该值与该项目的其余数据字段一起返回到行中。在E1中,输入公式

    =IF(A1<>"",OFFSET(D1,MATCH(TRUE,LEN(A2:A20)<>0,0)-1,0),"")
    

    按 Control-Enter 将其作为数组公式输入,然后填写 E 列的其余部分,生成如下:

    您需要在最后一行(上图中的“End”)之后输入一个额外的值才能使这项工作生效。现在您有了 E 列中每个项目的完整描述。复制 E 列,粘贴值,按 E 列排序以将所有空白行组合在一起,并删除 E 列中没有值的所有行。您如果您愿意,此时可以删除列 C 和 D,这样您就可以将其导出为 CSV:

    http://www.filedropper.com/multiline 有一个小电子表格说明了这一点

    【讨论】:

      【解决方案2】:

      我建议每个产品导出一行,并将完整描述放在一个地方。假设您在 A 列中有产品名称,在 B 列中有产品说明。您可以使用此公式将所有说明放在一个单元格中(此公式假定您从单元格 C1 开始):

      =IF(ISBLANK(A2);B1&C2;B1)
      

      将此公式拖到最后一行,复制粘贴为值(复制列 C 并将其粘贴为值),然后删除“空”行(按 A 列)。在这里,每个产品都有一行,描述在一个地方。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-11-01
        • 1970-01-01
        • 2023-01-20
        • 1970-01-01
        • 2022-01-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多