ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何用代码计算各成本要素的占比,求教各大师!

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-8-25 17:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
yjh_27 发表于 2016-8-23 10:48
直接利用层级判顶层

大师好!以下问题请教了!涉及到BOM,成本的东西太复杂了!
乘积求和怎么用代码表示!如
For total = 1 To 10
For i = 1 To 65536
那么 [arr(i, 7 ) * FL(1, 2) + arr(i, 8 ) * FL(2, 2)+ arr(i, 9 ) * FL(3, 2)+……  + arr(i, 7 + total ) * FL(total,2)]
'累积求和怎么用代码格式表示,total是可以灵活变动的。类似从1+到N可以用N(N+1)/2一样?

TA的精华主题

TA的得分主题

发表于 2016-8-25 17:19 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
chengshanming 发表于 2016-8-25 17:01
大师好!请教个问题!
乘积求和怎么用代码表示!如
For total = 1 To 10

sum=sum+arr(i,6+total)*FL(total,2)

TA的精华主题

TA的得分主题

发表于 2016-8-25 19:55 | 显示全部楼层
本帖最后由 yjh_27 于 2016-8-26 00:17 编辑
chengshanming 发表于 2016-8-24 23:08
是的老师!正常核算金额是从下往上累加,占比0层(本层)的是累加总金额占比,各半成品段是本工序所耗用 ...

我对你的数据理解不了。

模式24是1L要求的占比计算
模式25是17L的占比计算 顶层占比=本层金额/总金额,其他层占比=(本层金额 - ∑下层金额)/总金额

定额计算.rar

33.58 KB, 下载次数: 24

更新25

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-8-25 23:39 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
huang1314wei 发表于 2016-8-25 17:19
sum=sum+arr(i,6+total)*FL(total,2)

老师好!还是那个数组乘积求和的问题!主要是寻求VBA中如何来表示的一种格式与方法!类似如下,我随时会增加工序或减少工序,但是代码通过变量控制自动适应,无需手工更改,就像求从1到N的求和,通用N(N+1)/2,无论N数值为多少,此公式结构不会变。多谢了!
工序数        公式随工序数从1到N累加
total = 1        tmp1(c, 12 + total)=(arr(i, 7+1) * FL(1, 2)* brr(i, 2)
total = 2        tmp1(c, 12 + total)=(arr(i, 7+1) * FL(1, 2)* brr(i, 2)  +  (arr(i, 7+total) * FL(total, 2)* brr(i, 2)
total = 3        tmp1(c, 12 + total)=(arr(i, 7+1) * FL(1, 2)* brr(i, 2)  +  (arr(i, 7+2) * FL(2, 2)* brr(i, 2) +(arr(i, 7+total) * FL(total, 2)* brr(i, 2)
total = 4        tmp1(c, 12 + total)=(arr(i, 7+1) * FL(1, 2)* brr(i, 2)  +  (arr(i, 7+2) * FL(2, 2)* brr(i, 2)+(arr(i, 7+3) * FL(3, 2)* brr(i, 2) +(arr(i, 7+total) * FL(total, 2)* brr(i, 2)
total = 5        tmp1(c, 12 + total)=(arr(i, 7+1) * FL(1, 2)* brr(i, 2)  +  (arr(i, 7+2) * FL(2, 2)* brr(i, 2)+(arr(i, 7+3) * FL(3, 2)*(arr(i, 7+4) * FL(4, 2) brr(i, 2) +(arr(i, 7+total) * FL(total, 2)* brr(i, 2)
当total = N 时        "公式结构是一样的!
就像以下例字累加整数求和"
类似于以下例子:        
N=1        X=N(N+1)/2=1
N=2        X=N(N+1)/2=3
N=3        X=N(N+1)/2=6
N=4        X=N(N+1)/2=10
N=5        X=N(N+1)/2=15
N=N        X=N(N+1)/2

定额计算(完整版)(5工序).rar

20.3 KB, 下载次数: 20

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

本版积分规则

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

GMT+8, 2024-11-15 02:14 , Processed in 0.033096 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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