PowerBI不用装!Excel DAX+M就能做!
一句话核心价值点:用Excel自带的PowerQuery(M)与PowerPivot(DAX),不用另装软件,也能把杂乱表格变聪明分析,让2026年的日常办公省时、省力、少返工。
目录
乱表合并快到像聊天记录
办公室常遇到每月销售表分开放,手动复制粘贴眼睛都花。用M一次收齐2025年1~12月的表,像收聊天记录一样顺。
let 源 = Folder.Files("C:\2025销售\"), 筛选Excel = Table.SelectRows(源, each [Extension] = ".xlsx"), 读取数据 = Table.AddColumn(筛选Excel, "数据", each Excel.Workbook(File.Contents([Folder Path] & [Name]))), 展开表 = Table.ExpandTableColumn(读取数据, "数据", {"Data", "Name"}, {"Data", "FileName"}), 合并所有 = Table.Combine(Table.SelectColumns(展开表,{"Data"})[Data]), 改列名 = Table.RenameColumns(合并所有,{{"Column1", "日期"}, {"Column2", "产品"}, {"Column3", "销量"}})in 改列名
先抓文件夹里所有Excel,不管多少文件都不怕漏只挑xlsx避免混入无关格式Excel.Workbook把每个文件拆成可操作表Table.Combine把多个表拼一起,像串聊天记录改好列名,后续分析直接可用,不用来回点鼠标
金句:表格再多,M一收就乖,像把散落的纸条拼成清单。
自动去重还能留最新行
客户信息表里同个手机号重复,手工挑最新一条累到怀疑人生。
最新客户 =VAR 当前手机 = '表'[手机号]RETURN CALCULATE( MAX('表'[更新时间]), FILTER('表', '表'[手机号] = 当前手机) )
配合PowerQuery去重保留该时间行:
分组取最新 = Table.Group(源, {"手机号"}, {{"最新行", each Table.Max(_, "更新时间")}}),展开最新 = Table.ExpandRecordColumn(分组取最新, "最新行", Table.ColumnNames(源))
VAR先把当前手机号拎出来做比较基准FILTER圈出同号的所有记录Table.Max按更新时间挑最晚那条Table.Group按手机号归堆,每堆留最新时间戳行展开后就是干净无重复的最新名单
金句:重复像回音,DAX帮你留最后一句话,M帮你删掉前面的啰嗦。
时间切片一拖就有报表
老板要看2025年每季度业绩,透视表切月份还得分组,麻烦。
季度销售额 =SWITCH( TRUE(), '日期表'[月] <= 3, "Q1", '日期表'[月] <= 6, "Q2", '日期表'[月] <= 9, "Q3", "Q4")
在PowerPivot建关系后,直接用此度量值生成季度汇总:
SWITCH按月份区间返回季度标签TRUE()让条件按顺序判断,命中即停与日期表建立关联后,按月自动归属季度报表字段一拖,季度视图立马呈现切换年份只需改日期表过滤,无需重写逻辑
金句:时间像河流,DAX帮你砌好坝,想看哪段开闸就放。
分组排名不靠手算眼瞅
区域销售员比比业绩,手工标名次费眼又易错。
区域排名 =RANKX( FILTER('销售表', '销售表'[区域] = EARLIER('销售表'[区域])), '销售表'[销售额], , DESC, DENSE)
RANKX在指定范围里排大小FILTER圈出同区域选手,避免跨区域比EARLIER锁定外层当前行区域作比较基准DESC从高到低,DENSE让名次连续不跳号结果直接嵌透视表,刷新即见最新座次
金句:排名像赛跑,DAX帮你掐表,谁在前一目了然。
跨表关联算出隐藏指标
订单表只有金额,想知道客户等级却藏身客户表。
客户等级销售额 =SUMX( RELATEDTABLE('客户表'), '订单表'[金额] * SWITCH('客户表'[等级], "A", 1.2, "B", 1.1, 1))
RELATEDTABLE把客户表拉到订单上下文SWITCH给不同等级乘权重,A级加成高SUMX逐行计算再合计,得出加权业绩两表在PowerPivot建关系,字段自动找对象不用VLOOKUP跳来跳去,模型算完直接出数
金句:数据像拼图,DAX帮你扣准边,隐形的关系也能亮出来。
动态筛选秒切业务视角
分析要同时看产品线+地区,固定透视表得反复调字段。
动态业绩 =CALCULATE( SUM('销售表'[金额]), '参数表'[产品线] = SELECTEDVALUE('切片器'[选产品线]), '参数表'[地区] = SELECTEDVALUE('切片器'[选地区]))
CALCULATE根据切片器实时改过滤条件SELECTEDVALUE抓当前切片器选的值两个维度同时作用,报表随点随变建辅助参数表让切片器选项可控业务视角想怎么切就怎么切,像换镜头拍全景
金句:分析像开车,DAX给你方向盘,想去哪转指针就行。
总结
M像收纳师,把乱表收得利利落落DAX像分析师,把数字问出背后故事两者合体,Excel也能做出灵活洞察会玩模型的人,2026年下班总比别人早
更多干货点我头像进主页,每天更新