Access交流中心

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

新增一条记录时使用Right让字段的数字部分自动加1

爱在深秋  发表于:2009-04-03 22:55:30  
复制

请朋友根据以下内容做个例子呀!

新增一条记录时使用RightDMax函数让字段的数字部分自动加1

 

答:使用RightDMax函数返回字段“FOO”的数字部分的最大值,然后加1

表达式为:

="REC-" & right(DMax("FOO", "FOOTable"), _

Len(DMax("FOO", "FOOTable")) - _

InStr(1, DMax("FOO", "FOOTable"), "-")) + 1

 

注意:但如果很多用户或多个程序都使用DMax去实现这个结果的话,特别在一个很大的表中这个过程会很慢,所以建议使用DefaultValue,它仅仅使用DMax一次

程序如下,写在更新事件中

Private Sub SomeField_AfterUpdate()

Dim strMax as string

strMax =DMax("FOO", "FOOTable")

me!HiddenFooCtl = "REC-" & right(strMax, len(strMax) - Instr(1,strMax, "-")) +1

End Sub

 

Top
善裕 发表于:2009-04-04 10:09:50

有朋友愿意按上面的提示,做个示例吗



ACMAIN.CHM 发表于:2009-04-06 09:23:28

假设这个自定义编号如下


表 tableTest
字段 mySeq
ABCD00001

 

则向下加一可以如下实现。

"ABCD" & nz(right(DMAX("mySeq","tableTest"),5))+1

 

 


**************
*   一切皆有可能   *
**************


ACMAIN - Access论坛回贴准则(个人)


QQ群 48866293 / 12035577 / 7440532 / 13666209
http://www.accessbbs.cn/bbs/index.php
http://www.accessoft.com/bbs/index.asp
http://www.office-cn.net/vvb/?fromuid=141646
http://www.access-programmers.co.uk/forums

http://www.office-cn.net/home/space.php?uid=141646


ztq 发表于:2009-05-20 17:52:33

 

 

假设条件如下 :
表名: FOOTable
字段名: FOO

起始编号:REC-00001

文本框名:me!HiddenFooCtl

建议写在进入事件中

Private Sub 凭证号_Enter()

Dim strMax as string

strMax =DMax("FOO", "FOOTable")

me!HiddenFooCtl = "REC-" & & Right("0000" & Trim(Str(Val(Right(strMax, 5)) + 1)), 5)


End Sub



ztq 发表于:2009-05-20 17:54:23

抱歉,更正如下:

 

假设条件如下 :
表名: FOOTable
字段名: FOO

起始编号:REC-00001

文本框名:me!HiddenFooCtl

建议写在进入事件中

Private Sub HiddenFooCtl_Enter()

Dim strMax as string

strMax =DMax("FOO", "FOOTable")

me!HiddenFooCtl = "REC-" & & Right("0000" & Trim(Str(Val(Right(strMax, 5)) + 1)), 5)


End Sub



善裕 发表于:2009-05-21 10:58:47

能实现吗,我试试

 

 



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