使用Power Query筛选距今6个月内的日期(日期格式为yyyymmdd)
Power Query处理yyyymmdd日期并筛选近6个月数据的步骤
第一步:找到Power Query的查询编辑入口
- 打开Excel,把你的数据集转成表格(选中数据→「插入」选项卡→「表格」)
- 切换到「数据」选项卡,点击「从表格/范围」,自动打开Power Query编辑器,这就是你编写/修改查询的地方
第二步:把yyyymmdd文本转成日期格式
你的日期列是yyyymmdd的文本格式,得先转成Power Query能识别的日期类型:
- 选中日期列,点击顶部「转换」选项卡→「数据类型」→「日期」
- 如果自动转换成功,直接下一步;如果失败,用下面的自定义列方法:
- 点击「添加列」选项卡→「自定义列」,在公式框里输入:
把「你的日期列名」换成你实际的列名称,点击确定后会生成新的日期列,最后删掉原来的文本日期列即可。Date.FromText(Text.From([你的日期列名]), [Format="yyyyMMdd"])
第三步:筛选距今6个月内的数据
方法一:可视化操作(适合新手)
- 选中转换好的日期列,点击列标题旁的筛选按钮→「日期筛选」→「自定义筛选」
- 在弹出的窗口中,选择「大于或等于」,然后在右侧输入框里粘贴这个公式:
点击确定,就会自动过滤掉6个月前的数据。Date.AddMonths(DateTime.LocalNow(), -6)
方法二:直接写查询代码(进阶)
点击顶部「高级编辑器」,把现有代码替换成下面的内容(记得替换表格名和列名):
let 源 = Excel.CurrentWorkbook(){[Name="你的表格名称"]}[Content], 转换日期格式 = Table.AddColumn(源, "标准日期", each Date.FromText(Text.From([原日期列名]), [Format="yyyyMMdd"])), 删除原列 = Table.RemoveColumns(转换日期格式,{"原日期列名"}), 筛选近6个月数据 = Table.SelectRows(删除原列, each [标准日期] >= Date.AddMonths(DateTime.LocalNow(), -6)) in 筛选近6个月数据
内容的提问来源于stack exchange,提问作者user29930398
相关产品推荐
相关产品推荐

