zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Power Query技巧:更强大的拆分

2023-03-07 09:12:08 时间

标签:Power Query

在Excel中,拆分是一项常见的任务,而Excel中的“分列”功能只能将单列文本拆分成多列。如果想拆分并提取文本中的数字,或者将文本拆分成多行,那么使用Power Query是一个好的选择。

示例工作表如下图1所示。

图1

我们想要获取列B中的数字,有几种方法。

最简单的是使用“快速填充”。在单元格C1中输入B1中的数字1,然后单击功能区“数据”选项卡“数据工具”组中的“快速填充”命令,结果如下图2所示。

图2

然而,这种方法不能实现自动更新,即改变列B中的数字后,列C中的数字不会跟着自动改变。

此时,我们可能会想到使用公式,但公式可能相当复杂。可以在单元格C1中输入公式:

=MID(B1,MAX((--(MID(B1,ROW(INDIRECT("1:" & LEN(B1))),1)=" "))*ROW(INDIRECT("1:" & LEN(B1))))+1,50)

这是一个数组公式。将其下拉至数据单元格末尾,结果如下图3所示。

图3

虽然在列B中的数字改变时列C中的数字同步变化,但公式复杂。

下面使用Power Query来解决。

1.单击功能区“数据”选项卡“获取和转换数据”组中的“获取数据——来自文件——从工作簿”。

2.在“导入数据”对话框中,选择数据所在的工作簿,单击“导入”按钮。

3.在“导航器”中选择数据所在的工作表,单击“加载”按钮。

4.单击功能区新添加的“查询”选项卡中的“编辑”,打开“Power Query编辑器”,选择数字所在列,如下图4所示。

图4

5.单击Power Query编辑器“主页”功能区中的“拆分列——按分隔符”命令,如下图5所示。

图5

6.在“按分隔符拆分列”中,“选择或输入分隔符”为“空格”,“拆分位置”为“最右侧的分隔符”,如下图6所示。

图6

7.单击“确定”,结果如下图7所示。

图7

下面,再尝试使用Power Query将文本拆分成多行,如上图1中的示例工作表,列A中单元格A1的数据为Excel和Power BI,想将其拆分成两行。

在Power Query编辑器中,选择要拆分的列。然后,单击“拆分列——按分隔符”。在“按分隔符拆分列”中,进行如下图8所示的设置

图8

结果如下图9所示。

图9