ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

有没有办法将源数据中的公式用VBA代码计算

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-8-29 10:04 | 显示全部楼层 |阅读模式


搜狗截图20240829095024.jpg 工资表.zip (21.34 KB, 下载次数: 7)
L2=IF(AO2<=4000,1900,IF(AO2<=5000,2000,IF(AO2<=7000,2100,IF(AO2>=7001,2200))))

S2=M2+N2+O2+P2+Q2+R2

V2=L2/21.75/8

X2=ROUND(IF(AO2>0,V2*21.75*8,V2*W2),2)

Z2=ROUND(IF(AO2>0,0,V2*Y2*1.5),2)

AB2=ROUND(IF(AA2<=0,0,V2*AA2*2),2)

AD2=ROUND(IF(AO2>0,0,V2*AC2*3),2)

AE2=ROUND(IF(AO2>0,AO2-L2-AB2,0),2)

AG2=AF2/21.75

AH2=ROUND(IF(T2>21.75,AG2*21.75,AG2*T2),2)

AI2=TRUNC(AJ2+AK2,2)

AL2=ROUND(X2+Z2+AB2+AD2+AE2+AH2+AI2,2)

AM2=ROUND(IF(T2<=0,AO2,AO2/21.75/8*S2),2)

AN2=IF(T2=0,"0",AL2-AM2)

AP2=SUM(AQ2:BB2)

AY2=AN2

BC2=SUM(BD2:BO2)

BL2=BP2

BP2=BQ2+BR2+BS2+BT2

BQ2=CW2

BR2=CX2

BS2=CY2


BU2=SUMPRODUCT((专项附加!$A$3:$A$13=$B2)*1,专项附加!$Q$3:$Q$13)

BV2=AN2-BP2

BW2=IF(ROUND(IF((AP2-BC2-BU2)<36000,((AP2-BC2-BU2))*3%,IF((AP2-BC2-BU2)<=144000,((AP2-BC2-BU2))*10%-2520,IF((AP2-BC2-BU2)<=300000,((AP2-BC2-BU2))*20%-16920,IF((AP2-BC2-BU2)<=420000,((AP2-BC2-BU2))*25%-31920,IF((AP2-BC2-BU2)<=660000,((AP2-BC2-BU2))*30%-52920))))),2)-BX2<0,0,ROUND(IF((AP2-BC2-BU2)<36000,((AP2-BC2-BU2))*3%,IF((AP2-BC2-BU2)<=144000,((AP2-BC2-BU2))*10%-2520,IF((AP2-BC2-BU2)<=300000,((AP2-BC2-BU2))*20%-16920,IF((AP2-BC2-BU2)<=420000,((AP2-BC2-BU2))*25%-31920,IF((AP2-BC2-BU2)<=660000,((AP2-BC2-BU2))*30%-52920))))),2)-BX2)

BX2=SUM(BY2:CJ2)

CS2=BW2+CK2+CL2+CM2+CN2+CO2+CP2+CQ2+CR2

CT2=BV2-CS2

CW2=IF(CV2=税率表!$F$3,税率表!$G$3,IF(CV2=税率表!$F$4,税率表!$G$4,IF(CV2=税率表!$F$5,税率表!$G$5,IF(CV2=税率表!$F$6,税率表!$G$6,IF(CV2=税率表!$F$7,税率表!$G$7,IF(CV2=税率表!$F$8,税率表!$G$8,IF(CV2=税率表!$F$9,税率表!$G$9)))))))

CX2=IF(CV2=税率表!$F$3,税率表!$I$3,IF(CV2=税率表!$F$4,税率表!$I$4,IF(CV2=税率表!$F$5,税率表!$I$5,IF(CV2=税率表!$F$6,税率表!$I$6,IF(CV2=税率表!$F$7,税率表!$I$7,IF(CV2=税率表!$F$8,税率表!$I$8,IF(CV2=税率表!$F$9,税率表!$I$9)))))))

CY2=IF(CV2=税率表!$F$3,税率表!$K$3,IF(CV2=税率表!$F$4,税率表!$K$4,IF(CV2=税率表!$F$5,税率表!$K$5,IF(CV2=税率表!$F$6,税率表!$K$6,IF(CV2=税率表!$F$7,税率表!$K$7,IF(CV2=税率表!$F$8,税率表!$K$8,IF(CV2=税率表!$F$9,税率表!$K$9)))))))

CZ2=CV2-SUM(CW2:CY2)

DA2=IF(D2=VLOOKUP(B2,专项附加!$A:$B,2,FALSE),"OK","有误")

将源数据工作表带有计算公式的全部用VBA代码实现后台计算



在第2行开始,针对有计算公式的,将公式用VBA代码实现,如果在相应的单元格填入数据,将自动计算数据。
在单元格内不显示计算公式,全部由VBA代码后台实现计算出数据。

寻求帮助,谢谢大家!

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-10-22 16:15 | 显示全部楼层
本帖最后由 变不了的改。 于 2024-10-22 16:17 编辑

搜狗截图20241022161715.jpg 谢谢大家,经过自己的不断琢磨,在2024年10月22日下午,终于编制成功了,虽然公式多,也仅用了几十行代码,速度非常之快,通过公式和代码反复验算,没有任何数据之差。之前询问过别人,费用在500~1000以上,最终还是靠自己省了麻烦其他的费用……

TA的精华主题

TA的得分主题

发表于 2024-8-30 08:41 | 显示全部楼层
那么多的公式,要全部用代码来实现,工作量不是一般的大,除非是有偿

TA的精华主题

TA的得分主题

发表于 2024-8-30 11:29 | 显示全部楼层
这么多公式,免费没人愿意做的

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-30 15:32 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
3190496160 发表于 2024-8-30 08:41
那么多的公式,要全部用代码来实现,工作量不是一般的大,除非是有偿

可以适当有偿

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-30 15:32 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
冰封气流 发表于 2024-8-30 11:29
这么多公式,免费没人愿意做的

可以适当有偿

TA的精华主题

TA的得分主题

发表于 2024-8-31 09:44 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-2 17:01 | 显示全部楼层
冰封气流 发表于 2024-8-31 09:44
也别适当有偿了,建议去淘宝吧~服务好,能改到你满意

对,确实可以

TA的精华主题

TA的得分主题

发表于 2024-10-30 10:32 | 显示全部楼层
变不了的改。 发表于 2024-10-22 16:15
谢谢大家,经过自己的不断琢磨,在2024年10月22日下午,终于编制成功了,虽然公式多,也仅用了几十行代码, ...

VBA代码比直接用公式快很多吗
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-4 00:57 , Processed in 0.053368 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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