1

我有一个大型数据文件,其中包含提取过程中的一些断行。我正在尝试在 excel 中对其进行清理,并且遇到了多行检查的问题。我可以在我的公式中嵌套一定数量的 IF 语句,但这存在缺失值的风险。数据示例如下所示(字符串粘贴到 A 列):

'ID_Value','last_name','first_name','','dob','gender'comment
comment
comment
comment'
'ID_Value','last_name','first_name','','dob','gender'comment'
'ID_Value','last_name','first_name','','dob','gender'comment'
'ID_Value','last_name','first_name','','dob','gender'comment
comment
comment
comment
comment'

我需要将注释行滚动到它们之前的正常行中。目前,我可以识别所有行,并且可以在有两个评论行时使其工作,但超出此范围我不知所措。

Formula in Column B:  =IF(LEFT(A1, 1) = "'", "IGNORE", "FLAG")
Formula in Column C:  =(IF(B2 = "FLAG", IF(B1 = "FLAG", "MOVE")))
Formula in Column D: =IF(B2 = "FLAG", IF(B1 = "FLAG", IF(C2 = "MOVE", CONCATENATE(A1, A2))))

非常感谢任何建议。

4

1 回答 1

0

在这里,你应该这样做。在此处下载电子表格。
电子表格示例

将您的数据粘贴到工作表 1 单元格 A1 中,然后单击 run_filter 按钮。或者,您可以先使用 Sheet1 中已经存在的虚拟数据运行它,然后检查结果是否按预期工作。

几个警告。

  1. 当宏在 A 列中遇到空白单元格时,宏将停止。这就是我确定宏应该结束的方式。
  2. 注释应包含不超过 5 个逗号,否则它们将被解释为真实数据。
  3. 一个空格字符被添加到注释中。
  4. 第一行不应包含评论。

将使用所需的结果创建一个名为 Filtered_Result 的新工作表。


如果要查看代码,请单击开发人员选项卡。如果它不存在 请参阅此处了解如何添加它选项卡 然后单击宏按钮。 宏按钮 单击宏 combine_comments 上的编辑按钮以查看代码。 编辑按钮

试一试,让我知道它是怎么回事。彼得·H

于 2013-06-22T05:50:59.380 回答