Power Query逆透视列处理数据列转换为行的问题

 时间:2024-10-23 01:50:53

Excel中工作表中,有时需要把多列数据转换咦筋庑檗到多行中,传统的方法是很处理的。一般需要多个步骤或VBA,而PowerQuery数据固嗟喹账工具则可轻易实现。PQ是Excel中一个功能强大且容易掌握(要精通的话那就要花点功夫了)的数据工具,Excel2016或2019自带,2010或2013需要下载PowerQuery后安装。因为PQ处理数据是一个数据查询,相当于对数据库进行查询操作,所以对数据源要求数据库一样的结果,对于Excel的数据就是要求不能有合并单元格,有标题行(如果没有,创建表时会自动添加一行标题),下面结合一个具体问题说明PQ如何转换的具体步骤:

工具/原料

电脑

Excel2010或更高版本

方法/步骤

1、光标定位到数据区域,数据菜单——获取或转换数据——自表格/区域,Excel会自动将数据区域转换为表格(较早的版本的要先将区域转换为表格——光标定位到数据区域后按Ctrl+T)

Power Query逆透视列处理数据列转换为行的问题

Power Query逆透视列处理数据列转换为行的问题

2、按图2中的确定,数据辨泔矣嚣区域转换为表格后,Excel会自动启动PQ,进入PQ界面。简单介绍下PQ界面,有点类似于Excel的工作表,但内容要少一些,但功能却非常强大。上面菜单栏,菜单栏下诹鬃蛭镲面是对应于不同菜单的工具栏(图3中是对应文件菜单的工具栏),工具栏下面是PQ的M语言(也收M公式)编辑栏,编辑栏的语言对应当前操作步骤的语言。对于熟练掌握PQ的高手则不需要一个个步骤来进行操作,而是直接通过书写一系列的M语言来完成复杂的数据处理过程(打开视图菜单中的高级编辑器,在编辑器直接编写M语言),而对于初学者,则按一个个步骤来操作是学习和掌握PQ最有效的方法。下面右侧是操作步骤的记录,每一步骤都会记录下来,任何时候可以对某些步骤进行编辑修改,也可删除或插入步骤。如图3中已有的两个步骤是启动PQ时自动添加的,第1个步骤是源,表示从工作表中获取数据源,第2个步骤是PQ根据数据各列数据的属性,自动判断将数据转换为不同的大型,如第1列的名称,前面有“ABC”这样的标示,表示该列是文本数据,点这个标示,会弹出数据类型,与Excel工作表设置单元格格式的数据类型相似。后面列的“123”表示是整数,如小数则是“1.2”。编辑栏下面是数据预览区,每一个处理步骤后,如果步骤没有错误,就会显示出该步骤完成的后结果。点右侧栏的步骤,会显示对应步骤的处理结果,也就是可随时回过头来观察各个步骤的处理效果。

Power Query逆透视列处理数据列转换为行的问题

3、选择名称列,转换菜单中点逆透视列下拉箭头,选择“逆透视其他列”,就把除选择“名称”以外的其他所有列都进行逆透视。也可以选择所有数据列,直接点“逆透视列”或下拉中“逆透视选择的列”。这里用“逆透视其他列”是选择时只要选择一列,这对于要逆透视多列的情况操作相对容易些。

Power Query逆透视列处理数据列转换为行的问题

4、逆透视后的结果如图5

Power Query逆透视列处理数据列转换为行的问题

5、现在已基本达到了需要的结果,但“属性”列是多余了,右击后,选择“删除”,也可以选择后,在开始菜单中选择删除列,再右击“值”,选择“重命名”,将“值”修改为“数据”

Power Query逆透视列处理数据列转换为行的问题

6、现在的预览结果已符合要求,可以所数据上载回Excel工作表了。文件菜单中有两个上载选项,一个是“关闭并上载”,结果会关闭PQ,并将处理后的数据上载到一个新的工作表中;另一个是“关闭并上载至”,这里会更多的选项项。我们现在选择些选项。

Power Query逆透视列处理数据列转换为行的问题

7、回到Excel工作表中,会弹出跗柿椁焚如何上载数据的对话框,“新工作表”则会在新工作表中上载数据,与步骤5中选择“关闭并上载”效果一样,这里选蒉揉坟巡择“现有工作表”,再选择结果目标位置起始单元格,这里选择H1。上载的结果可以选择“表”,就是PQ中的预览看到的表,也可以以PQ处理后的做数据源进行透视,生成数据透视表,还可生成数据透视图。这里选择“表”。

Power Query逆透视列处理数据列转换为行的问题

8、确定后,数据就会上载到指定的区域

Power Query逆透视列处理数据列转换为行的问题

9、现在数据源有变化,增加2行数据,且原有数据中b中的7改到了a中。此时,PQ的结果并没有变化。

Power Query逆透视列处理数据列转换为行的问题

10、PQ查询的结果并不会在数据源修改后立马更新,这点与公式是不同的。也正是这样,PQ查询才不会像公式一样要消耗额外的资源。如果不介意没有立即得到更新结果,可以不予理睬。文件在保存时会自动更新,下次打开就是更新的。要立即看到更新结果,可以在PQ结果中右击,选择“刷新”即可进行更新。

Power Query逆透视列处理数据列转换为行的问题

Excel VBA取消全部隐藏的工作表? Excel中如何批量更改单元格内特定文字的颜色VBA 怎么查看在excel中取消隐藏行的vba宏代码 Excel如何提取不重复值、统计不重复值个数? Excel中VBA auto set hyperlink自动设置超链接
热门搜索
ps批量处理图片 花千骨漫画 硬币图片 中国移动标志图片 漫画斗罗大陆