易表在线答疑技术与交流用户社区 → [求助]请对一个公式进行指教


  共有15057人关注过本帖树形打印复制链接

主题:[求助]请对一个公式进行指教

帅哥哟,离线,有人找我吗?
iyplx2425
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
[求助]请对一个公式进行指教  发帖心情 Post By:2012/4/6 10:19:00 [只看该作者]

egd文件下载
文件中“结转与库存”表,[结转]列中,[月份]为字符型数据(还与其他文件关联),其中[月份]=“03”时的[结转]为手动录入(实际的盘点数),从04月份开始由表格自动计算。我用的[结转]刷新公式是:
if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,Number("月份") - 1,"产品代码", "=" ,[产品代码])),
但没能计算出来。不知问题出在哪里。请老师指教。谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
wjq1072
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2012/4/6 10:41:00 [只看该作者]

if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,Right("0"+Text(Number([月份])-1),2),"产品代码", "=" ,[产品代码]))

 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2012/4/6 10:43:00 [只看该作者]

能用了。谢谢老师!

 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2012/4/6 15:31:00 [只看该作者]

老师,我把您的公式研究了后,省掉riht()效果也是一样的。同时也发现自己原来的公式错误在于数据类型的问题。Number([月份])-1是数值型数据,而表中[月份]是字符型的。改成,"0"+Text(Number([月份])-1)后就成了字符型了。这样理解对吗?

if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,"0"+Text(Number([月份])-1),"产品代码", "=" ,[产品代码]))

-=-=-=- 以下内容由 iyplx24252012年04月06日 03:37pm 时添加 -=-=-=-
不过我又想到一个需要处理的问题,如果到了11月份,这个公式就有问题了。那时,"0"+Text(Number([月份])-1)会成为010,将无法识别。可能只能把[月份]的字符改成自然数形式的,即1、2、3、4等等,并把公式里面的“0”+去掉。


 回到顶部
帅哥哟,离线,有人找我吗?
wjq1072
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2012/4/6 16:25:00 [只看该作者]

月份列字符型
不是正好说明不能省掉“riht()”的吗!
月份数值符型
if([月份] = "03",[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,[月份]-1,"产品代码", "=" ,[产品代码]))


-=-=-=- 以下内容由 wjq10722012年04月06日 05:48pm 时添加 -=-=-=-
你的第一个月不一定是“03”月吧?所以通用公司应该是:
If([月份]=FindText(GridName,"月份","产品代码", "=" ,[产品代码]),[件数/p_结转],FindText(GridName,"件数/p_库存","月份", "=" ,Right("0"+Text(Number([月份])-1),2),"产品代码", "=" ,[产品代码]))

 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2012/4/8 15:48:00 [只看该作者]

实际操作中,3月是起始月份,由手工输入,以后月份由公式计算。我试了,按我改动的公式做能达到预期效果。谢谢!

-=-=-=- 以下内容由 iyplx24252012年04月08日 03:49pm 时添加 -=-=-=-
老师说的是要解决11月份以后的问题吧?这个我还没试。

 回到顶部