为什么高手都用PowerQuery而不用复制粘贴?
5行代码搞定重复工作,DAX让报表自动更新!
【核心价值】 用Excel内置PowerQuery的M语言和PowerPivot的DAX公式,把重复粘贴、手动汇总变成一键自动化,5行代码解决80%的职场表格痛点!
【目录速览】
▸ 1. 重复数据合并?M语言1键清洗
▸ 2. 跨表汇总累死人?PowerQuery自动拼接
▸ 3. 动态报表不会做?DAX自动刷新数据
▸ 4. 复杂计算绕晕?M函数拆解逻辑链
▸ 5. 分析没思路?DAX指标反向推导
1. 重复数据合并?M语言1键清洗
痛点:每月从系统导出几十份订单表,手动删除重复客户信息累到眼瞎。
M代码示例:
let
源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
去重 = Table.Distinct(源, {"客户ID"}), // 按客户ID去重
筛选有效 = Table.SelectRows(去重, each [金额] > 0), // 只留正数金额
重命名列 = Table.RenameColumns(筛选有效,{{"下单日", "日期"}}) // 列名标准化in
重命名列
原理:Table.Distinct直接按指定列去重,比Excel的「删除重复项」更精准;后续通过链式函数清洗数据,5行代码完成人工半小时工作量。
2. 跨表拼接不用愁?PowerQuery自动抓取
痛点:销售部、财务部的月报分散在不同文件,每次手动复制粘贴对到半夜。
M代码示例:
let
文件路径 = Folder.Files("D:\2025年销售数据"), // 自动读取文件夹
所有Excel = Table.SelectRows(文件路径, each [Extension] = ".xlsx"),
合并数据 = Table.Combine(
List.Transform(所有Excel, each
let 源 = Excel.Workbook(_{[Content]}),
表 = 源{0}[Data]
in 表)
) // 批量合并所有工作表
in
合并数据
原理:Folder.Files自动扫描指定文件夹里的Excel文件,Table.Combine把多个表纵向合并,新增数据只需丢进文件夹,刷新即更新。
3. 动态报表卡壳?DAX让数据自动同步
痛点:做年度分析表时,手动调整公式范围,2025年数据来了又要重做一遍。
DAX公式示例:
年度销售额 =
CALCULATE(
SUM('销售表'[金额]),
'日期表'[年份] = 2025 // 自动筛选2025年
)
// 同比增长率 =
DIVIDE(
[年度销售额] - CALCULATE([年度销售额], '日期表'[年份] = 2024),
CALCULATE([年度销售额], '日期表'[年份] = 2024)
)
原理:通过日期表关联,DAX公式自动适应数据范围变化,新增2025年数据后,所有相关指标实时更新,不用改公式。
4. 复杂计算头大?M函数拆解步骤
痛点:要算每个客户的累计消费金额,用SUMIF嵌套到怀疑人生。
M代码示例:
let
源 = Excel.CurrentWorkbook(){[Name="订单"]}[Content],
添加序号 = Table.AddIndexColumn(源, "序号", 1, 1),
分组排序 = Table.Group(添加序号, {"客户ID"}, {
{"明细", each Table.Sort(_, {{"日期", Order.Ascending}}), type table}
}),
计算累计 = Table.TransformColumns(分组排序, {
{"明细", each Table.AddColumn(_, "累计金额",
each List.Sum(List.FirstN(_[金额], List.PositionOf(_[日期], [日期]) + 1)), type number)}
})
in
计算累计
原理:先分组再排序,用List.PositionOf定位当前行位置,动态计算累计值,比工作表函数的数组公式更易读。
5. 分析没方向?DAX指标倒推思路
痛点:老板要分析「高价值客户特征」,完全不知道从哪些维度下手。
DAX公式示例:
高价值客户 =
VAR 阈值 = PERCENTILE.INC(SUMMARIZE(客户表, 客户表[客户ID], "总消费", SUM(订单表[金额])), 0.8)
RETURN
CALCULATE(
DISTINCTCOUNT(客户表[客户ID]),
[总消费] >= 阈值 // 自动找出消费前20%的客户
)
原理:用PERCENTILE.INC动态定义「高价值」标准(前20%),再反向筛选客户特征,比拍脑袋分组更科学。
【金句收尾】
✨ “复制粘贴是体力活,PowerQuery是脑力杠杆——5行代码撬动8小时重复工作!”
✨ “DAX不是函数,是数据思维的翻译器:把‘我想知道’变成‘系统自动答’!”