易表在线答疑技术与交流用户社区 → 关于刷新公式的求教


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

主题:关于刷新公式的求教

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


加好友 发短信
等级:论坛游民 帖子:22 积分:0 威望:0 精华:0 注册:2010/1/29 17:59:00
关于刷新公式的求教  发帖心情 Post By:2010/2/22 22:18:00 [只看该作者]

我有个表以档案编号为序号排列,编号的组成为“客户经理+年月+序号”,编号的刷新格式为每个客户经理每个月各自编号,下个月重新编号。编号的示例:11040901001,即客户经理1104的09年1月第一个档案。
刷新公式为:If([客户经理]="","",Concat([客户经理],[k],Right("00"+Text(CountFor(Grid,"客户经理","=",[客户经理],"k","=",[k],1,Row)),3)))

现在有一要求是,编号完成后,即锁定不能修改,就算是客户经理变为其他人,编号不变。
版主给了我一个公式:
If([客户经理]="","",If([档案编号]="",Concat([客户经理],[k],Right("00"+Text(CountFor(Grid,"客户经理","=",[客户经理],"k","=",[k],1,Row)),3)),[档案编号]))

使用这个公式后,虽然达到了这个效果,但又出了一个问题,即新增记录时,无法自动编号。编号变为1104001,即客户经理+序号。尝试过几种方法仍无法解决,故向大家求教。egd文件下载


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


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


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


加好友 发短信
等级:论坛游民 帖子:22 积分:0 威望:0 精华:0 注册:2010/1/29 17:59:00
  发帖心情 Post By:2010/2/23 19:11:00 [只看该作者]

突然想到,现在的编号方式是统计客户经理当月所有档案记录,再编号,但如果有一个记录被删除,如果新增一个记录就会导致编号重复。能不能用以下方法?找到客户经理当月最后一个档案记录,然后加此基础上加1,来编号?我用过SUM,不过公式都不大对。应该怎么编?

-=-=-=- 以下内容由 suyuan2010年02月23日 07:14pm 时添加 -=-=-=-
我编了这样一个公式,但没有效果。
If([p]="","",If([档案编号]="",Concat([p],[k],Right("00"+Text(SUM(FindText(Grid,[档案编号],"客户经理","=",[客户经理],"k","=",[k],-2))),3)),[档案编号]))

-=-=-=- 以下内容由 suyuan2010年02月23日 07:15pm 时添加 -=-=-=-
我编了这样一个公式,但没有效果。
If([p]="","",If([档案编号]="",Concat([p],[k],Right("00"+Text(SUM(FindText(Grid,[档案编号],"客户经理","=",[客户经理],"k","=",[k],-2),1)),3)),[档案编号]))

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


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


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


加好友 发短信
等级:论坛游民 帖子:22 积分:0 威望:0 精华:0 注册:2010/1/29 17:59:00
  发帖心情 Post By:2010/2/23 21:35:00 [只看该作者]

谢谢版主了

 回到顶部