如何在Power Query中筛选日期列以排除非日期值?
在Power Query中筛选仅含有效日期的行
方法一:通过自定义辅助列判断
- 将Excel数据导入Power Query编辑器:选中目标数据区域,点击Excel顶部「数据」选项卡→「从表格/区域」(确保勾选「我的表格有标题」)。
- 添加自定义列:点击「添加列」选项卡→「自定义列」,在公式框输入:
把= try Date.From([目标日期列名]) otherwise null[目标日期列名]替换成你实际的列名称,点击确定。这一步会将有效日期转为标准日期格式,无效文本转为null。 - 筛选有效行:点击新添加的辅助列的筛选按钮,取消勾选「null」,只保留非空值。
- (可选)删除辅助列:右键辅助列标题,选择「删除」即可。
方法二:直接转换类型并筛选错误
- 导入数据到Power Query编辑器(同方法一第一步)。
- 转换列类型:选中目标日期列,点击「转换」选项卡→「数据类型」→「日期」。此时不符合日期格式的文本会显示为红色错误标识。
- 筛选正常行:点击该列的筛选按钮,取消勾选「错误」选项,仅保留正常的日期行。
注意:如果列中有文本格式的合规日期(比如"2023-10-05"),Power Query会自动识别并转换为有效日期,只有完全不符合日期规则的文本才会被标记为错误或转为null。
内容的提问来源于stack exchange,提问作者AxD




