ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: zhwq110

[已解决] [求助] 如何计算一行中非零值乘以不同系数并相加得出最终结果?

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-29 16:52 | 显示全部楼层
tgydslr 发表于 2020-6-29 16:32
上附件吧,这个不难

已经上传了,谢谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-29 16:58 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
cemmm 发表于 2020-6-29 16:33
连个附件都不给,没办法做了。

谢谢,表格已经上传了

TA的精华主题

TA的得分主题

发表于 2020-6-29 16:59 | 显示全部楼层
本帖最后由 aleaflin 于 2020-6-29 17:02 编辑

=SUMPRODUCT(N(OFFSET(A2,,SMALL(IF((E2:L2<>"-")*(E2:L2>0),COLUMN(D:K),100),COLUMN(A:H))))*OFFSET(E$17:L$17,COUNTIF(E2:L2,">0"),))

TA的精华主题

TA的得分主题

发表于 2020-6-29 17:01 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
=SUMPRODUCT(N(OFFSET(A2,,SMALL(IF(ISNUMBER(E2:L2)*(E2:L2>0),COLUMN(D:K),100),COLUMN(A:H))))*OFFSET($E$17:$L$17,COUNTIF(E2:L2,">0"),))
可能要加个数字的判断吧。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-29 17:04 | 显示全部楼层
zhwq110 发表于 2020-6-29 16:48
谢谢你!请问第五行的得数为什么是错误值呀?

按这个公式写后,结果好像不对,我把正确值写在后面了

图片

图片

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-29 17:06 | 显示全部楼层
cemmm 发表于 2020-6-29 17:01
=SUMPRODUCT(N(OFFSET(A2,,SMALL(IF(ISNUMBER(E2:L2)*(E2:L2>0),COLUMN(D:K),100),COLUMN(A:H))))*OFFSET($ ...

谢谢,这个公式拉出来的得数都数对的。请问你能讲讲这个公式的解释吗?感谢!

TA的精华主题

TA的得分主题

发表于 2020-6-29 17:07 | 显示全部楼层
本帖最后由 pxiceplay 于 2020-6-29 17:18 编辑

N2=SUM(OFFSET(E$17:L$17,COUNT(1/E2:L2),)*MOD(LARGE(IF(ISERR(1/E2:L2),,10-COLUMN(A1:H1)+E2:L2),COLUMN(A2:H2)),1))

数组公式,三键输入

根据14楼cemmm老师的改了一下,这个方式通用一些,之前的公式取巧了,对较大(超过100%)的百分比可能会出错

=SUM(OFFSET(E$17:L$17,COUNT(1/E2:L2),)*N(OFFSET(D2,,SMALL(IFERROR(E2:L2^0*COLUMN(A:H),99),COLUMN(A:H)))))

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-29 17:12 | 显示全部楼层
pxiceplay 发表于 2020-6-29 17:07
N2=SUM(OFFSET(E$17:L$17,COUNT(1/E2:L2),)*MOD(LARGE(IF(ISERR(1/E2:L2),,10-COLUMN(A1:H1)+E2:L2),COLUMN ...

谢谢你的这个公式得出的结果也是正确的,谢谢,请问能不能劳烦解释下这个公式,学习一下。感谢!

TA的精华主题

TA的得分主题

发表于 2020-6-29 17:16 | 显示全部楼层
zhwq110 发表于 2020-6-29 17:06
谢谢,这个公式拉出来的得数都数对的。请问你能讲讲这个公式的解释吗?感谢!

这个是 aleaflin  大神做的。我只是加了一个isnumber而已。
在上面的表中取前五个大于0的数,下面的表中按上表中大于0的数字个数用offset取系数,两个相乘求和。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-29 17:23 | 显示全部楼层
aleaflin 发表于 2020-6-29 16:59
=SUMPRODUCT(N(OFFSET(A2,,SMALL(IF((E2:L2"-")*(E2:L2>0),COLUMN(D:K),100),COLUMN(A:H))))*OFFSET(E$17:L ...

谢谢你大神,我的问题已经解决了!非常非常感谢。!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

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

GMT+8, 2024-4-25 21:28 , Processed in 0.034967 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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