注册 登录
编程论坛 VFP论坛

请帮忙将Excel中的vb语句转换成vfp语句,谢谢!

schtg 发布于 2023-06-28 19:13, 809 次点击
我从一个Excel文档中看到的单元格的计算公式,但我无力转化成vfp语句,请各位大侠帮忙,谢谢!
这是一个新高考等级赋分的计算方法,原单元格的计算公式为:
=IF(D3="","",MAX(IF(AND(D3<=LARGE(D:D,1),D3>=LARGE(D:D,COUNT(D:D)*0.15)),ROUND(86+(14/(LARGE(D:D,1)-LARGE(D:D,COUNT(D:D)*0.15)))*(D3-LARGE(D:D,COUNT(D:D)*0.15)),0),0),IF(AND(D3<LARGE(D:D,COUNT(D:D)*0.15),D3>=LARGE(D:D,COUNT(D:D)*0.5)),ROUND(71+(14/(LARGE(D:D,COUNT(D:D)*0.15)-1-LARGE(D:D,COUNT(D:D)*0.5)))*(D3-LARGE(D:D,COUNT(D:D)*0.5)),0),0),IF(AND(D3<LARGE(D:D,COUNT(D:D)*0.5),D3>=LARGE(D:D,COUNT(D:D)*0.85)),ROUND(56+(14/(LARGE(D:D,COUNT(D:D)*0.5)-1-LARGE(D:D,COUNT(D:D)*0.85)))*(D3-LARGE(D:D,COUNT(D:D)*0.85)),0),0),IF(AND(D3<LARGE(D:D,COUNT(D:D)*0.85),D3>=LARGE(D:D,COUNT(D:D)*0.98)),ROUND(41+(14/(LARGE(D:D,COUNT(D:D)*0.85)-1-LARGE(D:D,COUNT(D:D)*0.98)))*(D3-LARGE(D:D,COUNT(D:D)*0.98)),0),0),IF(AND(D3<LARGE(D:D,COUNT(D:D)*0.98),D3>=LARGE(D:D,COUNT(D:D)*1)),ROUND(30+(10/(LARGE(D:D,COUNT(D:D)*0.98)-1-LARGE(D:D,COUNT(D:D)*1)))*(D3-LARGE(D:D,COUNT(D:D)*1)),0),0)))
9 回复
#2
吹水佬2023-06-28 20:13
为什么要转换
#3
schtg2023-06-29 06:50
回复 2楼 吹水佬
vfp里执行啊,方便直接操作dbf自由表,谢谢!
#4
吹水佬2023-06-29 06:55
本身是EXCEL表的东西,VFP用EXCEL控件载入后不就可以算好了,不要拿到VFP里来再算?
#5
wengjl2023-06-29 10:07
不上附件,太抽象,看着头晕
#6
厨师王德榜2023-06-29 10:10
把公式复制下来, 再适当的地方回车 ,转换为易读格式, 有了易读格式,要转换也不那么难,你肯定可以的.
只有本站会员才能查看附件,请 登录
#7
schtg2023-06-29 11:36
回复 6楼 厨师王德榜
原句中if、and等太多,难以理清关系,这样就基本看得清楚啦,非常感谢!

[此贴子已经被作者于2023-6-29 11:38编辑过]

#8
schtg2023-06-29 11:41
回复 5楼 wengjl
哈哈,就是看得头晕,没法上传附件。
#9
schtg2023-06-29 11:41
回复 4楼 吹水佬
好办法,谢谢!
#10
schtg2023-06-29 11:43
研究研究再结帖哈,谢谢!
1