Excel 将内容从1列移动到3列

Excel 将内容从1列移动到3列,excel,Excel,我有一个包含以下内容的长文件: John Doe1 Street Foo 35 New York Mary Johnson Street Foo 49 Los Angeles Robert Deniro Street Bar 47 Washington ... 如你所见,有一列写着姓名、地址、城镇、姓名、地址、城镇 我想将其自动转换为具有3列的文件: John Doe1 Street Foo 35 New York Mary Johnson Street Foo

我有一个包含以下内容的长文件:

John Doe1
Street Foo 35
New York
Mary Johnson
Street Foo 49
Los Angeles
Robert Deniro
Street Bar 47
Washington
...
如你所见,有一列写着姓名、地址、城镇、姓名、地址、城镇

我想将其自动转换为具有3列的文件:

John Doe1        Street Foo 35     New York
Mary Johnson     Street Foo 49     Los Angeles
Robert Deniro    Street Bar 47     Washington
...
可能吗


Excel 2007/Windows 7

我肯定已经以不同的方式回答了很多次了,但由于我目前找不到示例,您可以尝试:

添加一列,其中
=MOD(ROW(),3)
向下复制以适应并转换为值。复制数据列两次,从第一次复制中删除顶部单元格,从第二次复制中删除顶部两个单元格。筛选以删除除MOD列中的
1
以外的行。

基于,并假设您的数据位于A1:A50(您可以根据需要在以下公式中扩展此范围),然后:

B1单元:
=索引($A$1:$A$50,行()*3-2,1)

单元格C1:
=索引($A$1:$A$50,行()*3-1,1)

单元格D1:
=索引($A$1:$A$50,行()*3,1)

这将为您提供一行重新排列的数据。尽可能向下复制B1:D1


只要遵循三个条目的格式,那么一个简单的for循环就可以做到这一点。Ziiweb,你对此有什么反馈吗?