以文本方式查看主题 - 易表在线答疑 (http://egrid2000.com/dvbbs/index.asp) -- 用户社区 (http://egrid2000.com/dvbbs/list.asp?boardid=2) ---- [求助]请对一个公式进行指教 (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=1165) |
-- 作者:iyplx2425 -- 发布时间:2012/4/6 10:19:00 -- [求助]请对一个公式进行指教 egd文件下载 文件中“结转与库存”表,[结转]列中,[月份]为字符型数据(还与其他文件关联),其中[月份]=“03”时的[结转]为手动录入(实际的盘点数),从04月份开始由表格自动计算。我用的[结转]刷新公式是: if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,Number("月份") - 1,"产品代码", "=" ,[产品代码])), 但没能计算出来。不知问题出在哪里。请老师指教。谢谢! |
-- 作者:wjq1072 -- 发布时间:2012/4/6 10:41:00 -- if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,Right("0"+Text(Number([月份])-1),2),"产品代码", "=" ,[产品代码])) |
-- 作者:iyplx2425 -- 发布时间:2012/4/6 10:43:00 -- 能用了。谢谢老师! |
-- 作者:iyplx2425 -- 发布时间:2012/4/6 15:31:00 -- 老师,我把您的公式研究了后,省掉riht()效果也是一样的。同时也发现自己原来的公式错误在于数据类型的问题。Number([月份])-1是数值型数据,而表中[月份]是字符型的。改成,"0"+Text(Number([月份])-1)后就成了字符型了。这样理解对吗? if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,"0"+Text(Number([月份])-1),"产品代码", "=" ,[产品代码])) |
-- 作者:wjq1072 -- 发布时间:2012/4/6 16:25:00 -- 月份列字符型 不是正好说明不能省掉“riht()”的吗! 月份数值符型 if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,[月份]-1,"产品代码", "=" ,[产品代码])) -=-=-=- 以下内容由 wjq1072 在 2012年04月06日 05:48pm 时添加 -=-=-=- 你的第一个月不一定是“03”月吧?所以通用公司应该是: If([月份]=FindText(GridName,"月份","产品代码", "=" ,[产品代码]),[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,Right("0"+Text(Number([月份])-1),2),"产品代码", "=" ,[产品代码])) |
-- 作者:iyplx2425 -- 发布时间:2012/4/8 15:48:00 -- 实际操作中,3月是起始月份,由手工输入,以后月份由公式计算。我试了,按我改动的公式做能达到预期效果。谢谢! -=-=-=- 以下内容由 iyplx2425 在 2012年04月08日 03:49pm 时添加 -=-=-=- 老师说的是要解决11月份以后的问题吧?这个我还没试。 |