以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于复杂的表达式,是否可以计算 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=9693) |
||||
-- 作者:annan -- 发布时间:2011/5/3 13:06:00 -- 关于复杂的表达式,是否可以计算
请看示例:表A分别有“纸箱名称,纸板规格,规格长、宽、高、单价,平方、数量、金额”列。
我的要求是:当“纸箱名称”列输入(比如:普通外箱),在“平方”列处自动计算(根据设定好的公式),注意:不同的纸箱名称有不同的计算公式,大概有四种公式;我在EXCEL里面是这样做的:=IF(OR(A1="普通外箱",),(长+宽+90)*(宽+高+50)*2*平方价/1000000,IF(OR(A1="普通内盒",),(长+宽+70)*(宽+高+40)*2*平方价/1000000,IF(OR(A1="一片箱",),(长*2+宽*2+20)*(宽*2+高*2+60)*2*平方价/1000000,"-")) 以上"A1"在狐表这里可以是“纸箱名称”列,
即:=IF(OR(纸箱名称="普通外箱",),(长+宽+90)*(宽+高+50)*2*平方价/1000000,IF(OR(纸箱名称="普通内盒",),(长+宽+70)*(宽+高+40)*2*平方价/1000000,IF(OR(纸箱名称="一片箱",),(长*2+宽*2+20)*(宽*2+高*2+60)*2*平方价/1000000,"-"))
求老师帮忙写一下这个公式在狐表内应该如何表达;非常感谢!附上例子,如有不明白,请留言! |
||||
-- 作者:caiwenzong -- 发布时间:2011/5/3 13:20:00 -- dim r as e.datarow select case e.datacol.name case "普通纸箱" r("平方")=(r("长")+r("宽")+90)*(r("宽")+r("高")+50)*2*r("平方价")/10000 end select |
||||
-- 作者:caiwenzong -- 发布时间:2011/5/3 13:21:00 -- 我只是个提示,另外的代码自己写吧,和这类似。 |
||||
-- 作者:caiwenzong -- 发布时间:2011/5/3 13:23:00 --
|
||||
-- 作者:czy -- 发布时间:2011/5/3 13:24:00 -- 按你的公式改差不多是这样
iif(纸箱名称 = \'普通外箱\',(规格_长+规格_宽+90)*(规格_宽+规格_高+50)*2*平方价/1000000, |
||||
-- 作者:czy -- 发布时间:2011/5/3 13:26:00 -- 长、宽、高列应该设成数值型。 表中没有看到平方价列。 |
||||
-- 作者:caiwenzong -- 发布时间:2011/5/3 13:31:00 -- 我没有下载附件,楼主应该增加一个”平方价“列。 |
||||
-- 作者:blackzhu -- 发布时间:2011/5/3 13:31:00 -- 居然碰到一个做纸箱的: iif([纸制品名称]=\'箱夹七层板\',[长]*[宽]*[每平方单价]/10000,iif([纸制品名称]=\'井字架\',(([长]*[高]*2)+([宽]*[高]*2))*[每平方单价]/10000,IIF([纸制品名称]=\'纸桥\',(([长]+[宽]+4)*([宽]+[高]+4))*[每平方单价]/10000,iif([纸制品名称]=\'五层箱\',((([长]+[宽]+8)*([宽]+[高]+4))*2*[每平方单价])/10000,iif([纸制品名称]=\'七层箱\',((([长]+[宽]+8)*([宽]+[高]+4))*2*[每平方单价])/10000,iif([纸制品名称]=\'七层橡筋箱\',([长]+[宽]+8)*([宽]+[高]+4)*2*[每平方单价]/10000+[橡筋箱],iif([纸制品名称]=\'五层橡筋箱\',([长]+[宽]+8)*([宽]+[高]+4)*2*[每平方单价]/10000+[橡筋箱],iif([纸制品名称]=\'三层内盒\',((([长]+[宽]+8)*([宽]+[高]+4))*2*[每平方单价])/10000,iif([纸制品名称]=\'上下五层板\',[长]*[宽]*[每平方单价]/10000,iif([纸制品名称]=\'上下箱夹板\',[长]*[宽]*[每平方单价]/10000,iif([纸制品名称]=\'箱夹三层板\',[长]*[宽]*[每平方单价]/10000,iif([纸制品名称]=\'dr七层箱\',((([长]+[宽]+8)*([宽]+[高]+4))*2*[每平方单价])/10000,iif([纸制品名称]=\'十字架\',[长]*[宽]*[每平方单价]/10000,Null))))))))))))) 把我的经典给你一下!
|
||||
-- 作者:annan -- 发布时间:2011/5/3 13:59:00 -- 老师你好,您能帮忙 再说详细一些吗?在哪执行这些代码? |
||||
-- 作者:caiwenzong -- 发布时间:2011/5/3 14:02:00 -- 表事件DataColChanged
|