将平面列表转换为 Excel 中的表格

将平面列表转换为 Excel 中的表格

我该如何实现非常长列表的格式如下:

在此处输入图片描述

变成这样的表格:

在此处输入图片描述

我在 Windows 上使用 Microsoft Excel 2010...由于我的数据的布局如图所示,数据透视表向导无法识别这些字段。

答案1

根据数据,有两种常规方法可以实现这一点。如果间距精确,即行数根本不会改变,则偏移命令将是最简单的。

如果数据在工作表 1 上,则在工作表 2 上输入前两行标题。

  • 使用命名将 sheet1!$a$1 命名为 Spot 或您喜欢的任何其他名称
  • 使用命名将 5 命名为步骤
  • 使用命名将 Pik 命名为 =+((COLUMN()-2)*Step)+(ROW()-1)

然后在 b2 中使用并根据需要延伸 =+OFFSET(spot,Pik,1)

这将提取所有数据。

这种方法有几个缺陷,最大的缺陷是如果数据中途出现一条额外的行或其他小修改,它就会中断。还有另一种使用搜索函数类型的方法的方法,我们查找关键数据(姓名、年龄等)并从下一个单元格返回信息。这更复杂。我可能会稍后写出来。

答案2

  1. 使用 RegEx 替换 (Notepad++) 将您的数据复制到文本编辑器。

  2. 全部替换^Person[\r\n]+Name[\s]+([\w]+)[\r\n]+Age[\s]+([\d]+)[\r\n]+Size[\s]+([\d])+[\r\n]+为:\1\t\2\t\3\r\n

  3. 将数据复制回 Excel。

  4. 转置数据并添加所需的标题。

相关内容