以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  自动编号问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=91309)

--  作者:yancheng
--  发布时间:2016/10/7 17:07:00
--  自动编号问题
现在的的编号如下:******-1-25-25,******-1-25-26,******-1-25-27

我有一个:复制材料,的按钮。

比如,我的不前行编号 是:******-1-25-26,
我要写一个代码,让它新增一行的编号为:******-1-25-28,(也就是这些编号(不规则的,只能判断中的  - 符号)

--  作者:有点蓝
--  发布时间:2016/10/7 17:10:00
--  
没看懂。没有规则的编号无法处理
--  作者:yancheng
--  发布时间:2016/10/7 17:15:00
--  
我的想法是:  提取最后一个 “ - ”后面的数字:(25.26.27),最大值。然后编成:28号,就行了。(前面的:******-1-25-  一样的编号)
[此贴子已经被作者于2016/10/7 17:16:32编辑过]

--  作者:有点蓝
--  发布时间:2016/10/7 17:23:00
--  
Dim str As String = "******-1-25-27"
Output.Show(str.SubString(0,str.Length - 2)  & val(str.SubString(str.Length - 2)) + 1)

--  作者:yancheng
--  发布时间:2016/10/7 17:30:00
--  
“ - ” 后面的:27,不一定是两位数。 可能是:3位数,可能是:1位数。



--  作者:有点蓝
--  发布时间:2016/10/7 17:44:00
--  
Dim str As String = "******-1-25-27"
Dim idx As Integer = str.LastIndexOf("-")
If idx > -1 Then
    Output.Show(str.SubString(0,idx+1)  & val(str.SubString(idx+1)) + 1)
End If


--  作者:yancheng
--  发布时间:2016/10/7 19:01:00
--  
还有个问题没解决。我要获取  “-”后的,数值,的最大值 ,也就是:从编号中自动提取最大的值 27(从:-25,-26,-27中取最大值)需要用什么代码?


--  作者:有点蓝
--  发布时间:2016/10/8 8:27:00
--  
只能逐行解析 “-”后的数值,然后比较。数据一多就算你不崩溃,程序也要崩溃。

要么专门增加一个表格来存储各种编号的最大值。