|
2#
楼主 |
发表于 2005-5-9 06:22:00
|
只看该作者
类似于以下的方法,但问题依旧。
“问:我有一个字段,包含这样的格式:"REC-1", "REC-2", "REC-3" 等. 当新增一条记录时,我如何让这个字段的数字部分自动加1呢(下一条记录应为REC-4)
答:使用Right及DMax函数返回字段“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
” |
|