Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

修改窗体的编码问题

欧阳空竹  发表于:2009-12-17 15:58:54  
复制

代码如下:

Private Sub YGXM_AfterUpdate()
Dim strbh, strbhgs  As String
strbh = CurrentProject.Connection.Execute("SELECT nz(Max(Val(Right([YGBH],2))),0) AS 表达式1 FROM tbl_员工信息").GetString
strbhgs = Format(Val(strbh) + 1, "000")
Me.FZBH = "YG-" & GetAllPY(Me.YGXM) & "-" & strbhgs & ""
End Sub


这是新增窗体根据员工姓名字首拼音进行的编号。
员工姓名为王重阳则编号为“YG-WCY-001”
          欧阳锋则编号为“YG-OYF-002”
          红七公则编号为“YG-HQG-003”****
          鸠摩智则编号为“YG-JMZ-004”

如果发现姓名写错了,需要在修改窗体中修改第三条记录红七公为洪七公,但是该条记录的编号就会变成“YG-HQG-005”
请问,如何在修改窗体中,保持编号数字部分不变,仅对字首拼音处的进行改变使第三条记录仍为“YG-***-003”数字部分不变。
请老师在上面的代码中作出指教,谢谢。

 

Top
ACCESS三年级学生 发表于:2009-12-18 14:14:23

没人能帮我实现么?

 



小魏 发表于:2009-12-18 18:24:42

先用代码判断编号字段的数据是否为空,如果是,则执行你现在的已经写好的代码.如果否,则另写代码专用于修改字母部份就行了.



ACCESS三年级学生 发表于:2009-12-18 23:37:31
不会啊,拜托了,给我写下呗

ACCESS三年级学生 发表于:2009-12-22 14:32:43

是我的问题描述的不清楚还是什么原因,怎么没人帮我解答啊?

问题在说一遍,我的编号是在新增窗体根据姓名字头生成的文本编号“YG-ABC-001”

如果对名字在修改窗体进行修改只想修改中间的部分,后面的数字不动。应该怎么实现。

谢谢



符鸿敏 发表于:2009-12-23 21:49:23
请楼主上传你的附件吧,这更方便我们为你解决问题。

ACCESS三年级学生 发表于:2009-12-25 01:43:44
点击下载此附件附件在这了,有劳大家了。

符鸿敏 发表于:2009-12-25 21:23:47

将修改窗体中的 strbhgs = Format(Val(strbh) + 1, "000")

改为:strbhgs = Format(Val(strbh) , "000") 即可。

请看看示例:

 

点击下载此附件

ACCESS三年级学生 发表于:2009-12-25 23:42:30

符鸿敏老师,您的这个办法我早就试过了,但是不是我要的效果,如果您试一下就能明白:

 

编号:     姓名:

YG-ZS-01   张三 

YG-LS-02   李四

YG-WW-03   王五

 

如果通过修改窗体把 李四 改为 李五 那么编号就会变成YG-LW-03。

我要的效果是YG-LW-02这样的,仅对姓名字头进行修改,数字部分不变

也就是说数字那不会有重号的。



大漠之烟 发表于:2009-12-26 15:02:05

姓名更新事件中只用下面一句就行:

me.YGBH="YG-" & GetAllPY(Me.YGXM) & "-" & right(me.ygbh,3)
 



ACCESS三年级学生 发表于:2009-12-26 15:03:02
9楼的正解。谢谢老师

总记录:10篇  页次:1/1 9 1 :