答案1
根据数据,有两种常规方法可以实现这一点。如果间距精确,即行数根本不会改变,则偏移命令将是最简单的。
如果数据在工作表 1 上,则在工作表 2 上输入前两行标题。
- 使用命名将 sheet1!$a$1 命名为 Spot 或您喜欢的任何其他名称
- 使用命名将 5 命名为步骤
- 使用命名将 Pik 命名为 =+((COLUMN()-2)*Step)+(ROW()-1)
然后在 b2 中使用并根据需要延伸 =+OFFSET(spot,Pik,1)
这将提取所有数据。
这种方法有几个缺陷,最大的缺陷是如果数据中途出现一条额外的行或其他小修改,它就会中断。还有另一种使用搜索函数类型的方法的方法,我们查找关键数据(姓名、年龄等)并从下一个单元格返回信息。这更复杂。我可能会稍后写出来。
答案2
使用 RegEx 替换 (Notepad++) 将您的数据复制到文本编辑器。
全部替换
^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
将数据复制回 Excel。
转置数据并添加所需的标题。