ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 2641|回复: 15

[求助] 还在成长的群友们,做个题练练手哈

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-11-5 15:27 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 可口可乐101 于 2020-11-5 15:39 编辑

大家下午好!
今天的工作做完了。进群和群友们一起成长,做个题练手哈

附档是近三年的销售表(只截取了一部分)
要求:
写度量值计算今年的销售增长量和增长率
用数据透视表展示,“品种”做为行,“月份”做为列,“年度”做为筛选。

有空的大家一起练习一起成长吧,感谢版主组建的平台,感谢平时很多老师的帮助。

销售增长.7z

9.11 KB, 下载次数: 20

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-11-5 21:27 | 显示全部楼层
抛砖引玉写了一段度量值,结果是错的。不怕大家笑,发给大家看看哈。
销售增长量 = CALCULATE(
    [销售量],
    FILTER(
        VALUES('Sheet1'[品种]),
        'Sheet1'[品种]=EARLIER('Sheet1'[品种])
    )
)

错误提示:EARLIER/EARLIEST 引用不存在的更早的行上下文。
image.png

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-11-5 21:30 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
群友勿喷,还需要老师指导

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-11-5 22:28 | 显示全部楼层
糟糕,弄道题,结果自己做不出来了

下载七次了,也没有群友上传结果上来,可能真的很多朋友跟我一样,还在学习阶段。

哪位老师请你们出手相助一下啊,感谢,感谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-11-5 23:10 | 显示全部楼层
这个问题好像不简单,走过路过的各一位老师各位大神,请你们指点津。

我就想能看到各个产品的同期增长情况。

TA的精华主题

TA的得分主题

发表于 2020-11-5 23:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 libo5563 于 2020-11-6 00:02 编辑

加个辅助列,建个日期表,用时间函数,不就好处理了吗
1.jpg

销售增长.rar

90.37 KB, 下载次数: 7

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2020-11-6 02:33 | 显示全部楼层
可口可乐101 发表于 2020-11-5 23:10
这个问题好像不简单,走过路过的各一位老师各位大神,请你们指点津。

我就想能看到各个产品的同期增长情 ...

我也做了个版本的,新建了日期表、按照理论上的BEST PRACTICE修改了一下销售记录(事实表)的表结构、建立了表关系等,具体请参考附件。
image.png

销售增长.zip

62 KB, 下载次数: 13

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-11-6 07:40 | 显示全部楼层
libo5563 发表于 2020-11-5 23:11
加个辅助列,建个日期表,用时间函数,不就好处理了吗

历害了,感谢老手出手相助,向你们学习。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-11-6 07:43 | 显示全部楼层
ThxAlot 发表于 2020-11-6 02:33
我也做了个版本的,新建了日期表、按照理论上的BEST PRACTICE修改了一下销售记录(事实表)的表结构、建 ...

历害了,感谢老手出手相助,向你们学习。

老师,你2点半还在为我排难解忧,你要多注意休息噢。再次表示感谢!

TA的精华主题

TA的得分主题

发表于 2020-11-6 10:18 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
可口可乐101 发表于 2020-11-6 07:43
历害了,感谢老手出手相助,向你们学习。

老师,你2点半还在为我排难解忧,你要多注意休息噢 ...

不客气,过奖了!我们共同探讨、学习!也谢谢你的关心!

以我先前学习的经验来看,中文的DAX学习资料十分有限,所以要想了解很多细节,还是需要查阅一些英文的网站,我个人推荐这个网站:https://dax.guide,由DAX界久负盛名的宗师级人物Marco Russo/Alberto Farrari(常被人合称the Italians)所创办,对所有DAX函数都有详细的解析及拓展讲解。

其实,你先前列的那个报错的公式,其实并没有看上去那么简单,
  1. 销售增长量 = CALCULATE(
  2.     [销售量],
  3.     FILTER(
  4.         VALUES('Sheet1'[品种]),
  5.         'Sheet1'[品种]=EARLIER('Sheet1'[品种])
  6.     )
  7. )

  8. 错误提示:EARLIER/EARLIEST 引用不存在的更早的行上下文。
复制代码
如果要真正研究起细节来还不容易(主要是各个函数所在的估值上下文Evaluation Context/EC),1. CALCULATE()的计算顺序是怎样的?
2. CALCULATE()使的EC发生了什么样的上下文转换(Context Transition)?
3. 这里的FILTER()的EC是怎样的?
4. VALUES('Sheet1'[品种])的计算结果是什么?
5. 既然EARLIER('Sheet1'[品种])所引用的“更早的行上下文”不存在,那么是否存在“当前的行上下文”?
。。。
这些细节,你不妨现在记下自己的答案,待学习过一阵后,再回头来看看,看一看对这些问题的了解有没有更加深入,这二者的差异其实就是这期间的成果。我自己就是这样,前后隔了差不多半年时间,才差不多解决了一个“小问题”,也通过前后对比,切实体会到了自己对DAX理解的逐步加深。

我们共同探讨、学习!Enjoy DAX!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-15 16:34 , Processed in 0.056584 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表