ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[Excel 函数与公式] [开_148]计算单月销售金额最高的月份(已评分总结)

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2014-9-28 08:24 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 cleverzhzhf 于 2014-10-30 08:27 编辑

根据以下内容答题:
计算单月销售金额最高的月份(题目).png

备注说明:
理论上,如果出现销售额相同情况,取任意一个月份均算正确。

奖励:
1、150个字符以内技术分1分
2、其他答案,根据情况奖励财富若干
计算单月销售金额最高的月份(题目).zip (18.34 KB, 下载次数: 584)


竞赛日期:2014-9-28至2014-10-20

——————————————————————————————————————————

70楼评分明细做了更新
84楼对此题目做了简短的讲解

在可接受的速度范围内,一剑老师的公式可以简化到93字符:
  1. =TEXT(RIGHT(MIN(-(SUMIFS(C:C,B:B,"<="&B2:B732,B:B,TEXT(B2:B732,">=e-m"))&B2:B732)),5),"e年m月")
复制代码


评分

10

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-28 08:28 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 delete_007 于 2014-9-28 16:45 编辑

131字符:
  1. =TEXT(TEXT(RIGHT(MAX(MMULT(-(TEXT(TRANSPOSE(B2:B731),"yymm")-ROW(1301:1412)=0),-C2:C731)/1%%+ROW(1301:1412)),4),"0!/00!/1"),"e年m月")
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-28 09:00 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 一剑惊心 于 2014-10-9 15:58 编辑

大致做一个
  1. =TEXT(RIGHT(MAX(SUMIFS(C:C,B:B,"<"&DATE({2013,2014},ROW(2:13),1),B:B,">="&{2013,2014}&-ROW(1:12))/1%%%+({2013,2014}&-ROW(1:12))),5),"e年m月")
复制代码
缩减一下字符
  1. =TEXT(RIGHT(MAX(SUMIFS(C:C,B:B,"<="&B2:B732,B:B,TEXT(B2:B732,">=e-m"))/1%%%+B2:B732),5),"e年m月")
复制代码
不怕卡出翔的话,继续缩减
  1. =TEXT(RIGHT(MAX(IFERROR(SUMIFS(C:C,B:B,"<="&B:B,B:B,TEXT(B:B,">=e-m"))/1%%%+B:B,)),5),"e年m月")
复制代码
再来一个2003版可用的
  1. =TEXT(RIGHT(MAX((SUMIF(B:B,TEXT(B2:B732,">=e-m"),C1)-SUMIF(B:B,">0"&B2:B732,C1))/1%%%+B2:B732),5),"e年m月")
复制代码

点评

最简的那个太惊人,我得到地下室将家里的银河十号搬上来。  发表于 2014-10-24 17:27

评分

4

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-9-28 09:23 | 显示全部楼层
我的答案:
136字符:
  1. =TEXT(EDATE(41244,MOD(MIN(MMULT(-(TEXT(TRANSPOSE(B2:B731),"em")=TEXT(EDATE(41244,ROW(1:24)),"em")),C2:C731+0)+ROW(1:24)%),1)/1%),"e年m月")
复制代码
不取巧,把41244换成2012年12月,144字符:
  1. =TEXT(EDATE("2012-12",MOD(MIN(MMULT(-(TEXT(TRANSPOSE(B2:B731),"em")=TEXT(EDATE("2012-12",ROW(1:24)),"em")),C2:C731+0)+ROW(1:24)%),1)/1%),"e年m月")
复制代码

TA的精华主题

TA的得分主题

发表于 2014-9-28 20:35 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. =TEXT(RIGHT(MIN(-(MMULT(-(TEXT(B2:B731,"em")=TRANSPOSE(TEXT(B2:B731,"em"))),-C2:C731)&B2:B731)),5),"e年m月")
复制代码
``

点评

看起来,很不错呀,改日送花!  发表于 2014-10-24 18:10

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-29 00:37 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 ouyangyunzi 于 2014-9-29 00:38 编辑

=TEXT(EDATE(41274,RIGHT(MAX((SUMIF(B:B,">"&EDATE(41274,ROW(1:24)-1),C:C)-SUMIF(B:B,">"&EDATE(41274,ROW(1:24)),C:C))/1%+ROW(1:24)),2)),"yyyy年m月")

补充内容 (2014-10-8 21:23):
=TEXT(EDATE(41274,MOD(MAX((SUMIF(B:B,">"&EDATE(41274,ROW(1:24)-1),C:C)-SUMIF(B:B,">"&EDATE(41274,ROW(1:24)),C:C))/1%+ROW(1:24)),100)),"e年m月")

补充内容 (2014-10-8 21:26):
=TEXT(EDATE(41274,MOD(MAX((SUMIF(B:B,">"&DATE(2013,ROW(1:24),),C:C)-SUMIF(B:B,">"&DATE(2013,ROW(2:25),),C:C))/1%+ROW(1:24)),100)),"e年m月")

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-29 09:42 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
149字符
  1. =TEXT(RIGHT(TEXT(MAX(SUMIFS(C:C,B:B,">="&EDATE(41244,ROW(1:24)),B:B,"<="&EDATE(41274,ROW(1:24)))+EDATE(41244,ROW(1:24))%%%),"0.000000"),6),"yyyy年m月")
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-29 10:16 | 显示全部楼层
  1. =TEXT(DATE(2013,RIGHT(MAX(MMULT(COLUMN(A:ABB)^0,(TEXT(B2:B731,"e-m")-DATE(2013,COLUMN(A:X),)=1)*C2:C731/1%)+COLUMN(B:Y)),2),),"e年m月")
复制代码
题目有些细节还待说明,例如重复最大值取前取后,计算结果是否可以通过自定义结果显示等

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-29 14:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 衣袂飘飘 于 2014-9-30 23:35 编辑
  1. =TEXT(MOD(MAX(SUMIFS(C:C,B:B,">"&DATE(2013,ROW(1:24),0),B:B,"<"&DATE(2013,ROW(2:25),1))*10^6+DATE(2013,ROW(1:24),1)),10^6),"e年m月")
复制代码
F15输入,数组公式。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-29 17:57 | 显示全部楼层
实力不足!尽力了!
  1. {=TEXT(EDATE("2015-1-31",-RIGHT(MAX(MMULT(N(A2:A25=TRANSPOSE(DATEDIF(B2:B731,"2015-1-31","m"))),IF(C2:C731="",0,C2:C731))+A2:A25%),2)),"yyy年m月")}
复制代码


评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-22 06:39 , Processed in 0.051240 second(s), 20 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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