我在Excel中有一个电子表格,它在第一列包含一个“成员ID”,在接下来的六列中有六个变量,与这个成员ID相关。
成员1| AAA | BBB | CCC | DDD | EEE | FFF
成员2| BBB | ZZZ | FFF | AAA | RRR | SSS
成员3| YYY | FFF | OOO | MMM | PPP | AAA
下面是我需要的格式:
会员1 AAA
成员1 BBB
会员1 CCC
成员1 DDD
成员1 EEE
会员1 FFF
成员2 BBB
成员2 ZZZ
会员2 FFF
会员2 AAA
成员2 RRR
会员2 SSS
会员3 YYY
会员3 FFF
成员3 OOO
成员3 MMM
成员3 PPP
会员3 AAA
任何人能给我的任何帮助都将非常感谢,我对如何做到这一点感到困惑。提前谢谢你!
发布于 2018-10-03 02:11:55
这个问题已经过时了,但我正需要它,所以我来回答。
我在Quora上找到了Chris Chua的解决方案,如果这对我有帮助,请在那里给他加分:https://www.quora.com/How-do-I-convert-multiple-column-data-into-a-column-with-multiple-rows-in-excel
我也会将它复制粘贴到这里,以防链接断开:
很抱歉。我真的不能清楚地看到书写,但我假设您想要将列标题作为数据集的一部分取消透视。
在这里,我建议一个使用Microsoft Excel的Power Query功能的解决方案。如果您使用的是Excel 2016,则可以在Data | Get & Transform功能区命令下找到该功能。否则,如果您使用的是Excel 2013或Professional Plus 2010版,则可以从此处下载Power Query插件。
步骤1:选择所有数据,按Ctrl+T创建一个表,在create table下,确保选中了My Table has headers。Sample data create table dialog
步骤2:在Excel 2016中,转到Data | Get & Transform | From Table。对于Excel 2013和2010的Power Query add-in,请在Power Query选项卡功能区中查找显示为From Table的内容。Ribbon location for "From Table"
第三步:打开电源查询界面。单击No的标题。列中,按住Ctrl键并单击Name列的标题。现在选择了这两列,右键单击标题,然后选择Unpivot Columns。Right Click, Unpivot Other Columns screencap
步骤4:请注意,数据现在已取消透视(这正是您想要的)。双击Attribute和Value headers将其重命名。
步骤5:单击Home | Close & Load。Close & Load screencap
步骤6: Excel将新清理的表格加载到新工作表中。答-达,你完了!Screencap of pivoted table, which is the desired output.
要在将来更新任何新数据,请执行以下操作:
假设您现在在原始表中有了新数据。Updated sample data table screencap with a new column, row and value inserted.
转到新清理的表,右键单击并选择刷新。Screencap of right-clicking inside the pivoted output table, clicking Refresh.
新数据将立即更新。
发布于 2015-03-11 12:04:48
这应该是可行的,尝试将excel文件另存为csv,然后制作一个脚本来格式化csv到您的喜好,然后导入csv到excel。
有许多脚本语言,如bash、powershell、python和教程,教你如何使用它们来做不同的事情。Python对初学者很友好。
发布于 2015-03-11 16:16:51
感谢Spidey的帮助。我设法用Sublime Text而不是Excel对它进行了排序。
对于感兴趣的人,我只是将这六列复制到Sublime Text中,对每一列之间的空格/空格/制表符进行了查找和替换,并将此空格转换为回车符/新行。这给了我一个巨大的变量列表。
然后,我复制了第一列(成员ID),选择了所有行,并“将选择拆分成行”,这使我在每行的末尾都有一个光标。然后,我只需选择每一行并执行一次copy -> return -> paste,六次。这给了我一个巨大的列表,每个成员的ID显示了六次。
然后就是(在Excel中)将长长的成员ID列表粘贴到A列,将长长的变量列表(从第一步开始)粘贴到B列。完成了!
https://stackoverflow.com/questions/28978227
复制相似问题