易表在线答疑技术与交流用户社区 → [求助]公式


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

主题:[求助]公式

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
[求助]公式  发帖心情 Post By:2013/12/26 11:46:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编号录入.egd

文件中,在“01月份”表的[产品编号_1]至[产品编号_80]写入刷新公式。由于列太多,想用一个统一的公式一次性写入,但执行起来不对,请老师看看问题出在哪里。
刷新公式的目的:当某个批次中某道工序的产品编号在“上年结转”表中已经勾选过了,在“01月份”表中对应的编号就不能再勾选。

谢谢。


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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/26 11:49:00 [显示全部帖子]

另外,转换函数中被转换的字符还有没有其他办法精简?

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 8:45:00 [显示全部帖子]

谢谢3楼老师,但如果在“上年结转”表中[批次号]、[工序名称]相同的行不止一行时,这个公式还是有问题的,FindText()函数只能返回“上年结转”表中第一次出现的行中的数据。好像用CountFor()函数能解决这个问题: 

IF(CountFor(GridName,"批次号", "=" ,[批次号],"工序名称", "=" ,[工序名称],"产品编号_4", "=" ,[产品编号_4]) > 0,0,[产品编号_4])。因为对colname()函数用法不熟悉,比如colname(2)括号中的2表示什么意思。请老师按这个公式帮我写下各列通用的公式。谢谢。

 


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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 9:49:00 [显示全部帖子]

 

Eval("IF(CountFor(""上年结转"",""批次号"", ""="" ,[批次号],""工序名称"", ""="" ,[工序名称] ,""产品编号_" + colname(2) + """, ""="",[产品编号_" + colname(2) + "]) = - 1,0,[产品编号_" + colname(2) + "])")

依样画瓢,不知对不对。


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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 10:42:00 [显示全部帖子]

哦。

 


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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 10:49:00 [显示全部帖子]

请问老师,条件“上年结转”中的编号=本表中的编号,通用公式怎么表述?

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 10:54:00 [显示全部帖子]

 

IF(CountFor(GridName,"批次号", "=" ,[批次号],"工序名称", "=" ,[工序名称], ColName, "=" , ColName) > 0,0, ColName)

能这样表达吗?用到Eval()中又该怎样用?

谢谢


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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 10:56:00 [显示全部帖子]

5楼公式我试了,还是没解决同批次、同工序在“上年结转”中有一行以上的情况。FindText()函数只认首次出现的行。

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 11:06:00 [显示全部帖子]

Eval("IF(CountFor(GridName,""批次号"", ""="" ,[批次号],""工序名称"", ""="" ,[工序名称], ColName, ""="" ,["+ColName+"]) > 0,0, ["+ColName+"])")

我把10楼的公式改写为上面的形式,结果都无法勾选了。


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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2013/12/27 11:17:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编号录入.egd

请老师看看这个文件。


 回到顶部
总数 18 1 2 下一页