以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  前缀重复加的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=55753)

--  作者:steven306
--  发布时间:2014/8/22 14:55:00
--  前缀重复加的问题
我在表的AfterEdit事件中写入如下代码目的是实现输入字符后会自动在该字符前加上“XM”前缀,功能已实现,但存在问题是:每编辑一次该单元格就会加一次“XM”,如何做个判断解决该问题?

If e.Col.Name = "PreID" Then
  
        e.Row("PreID")  = "XM" & e.Row("PreID")
End If


--  作者:Bin
--  发布时间:2014/8/22 14:58:00
--  
If e.Col.Name = "PreID" Then
     if e.Row("PreID").StartsWith("XM")=false  then
        e.Row("PreID")  = "XM" & e.Row("PreID")
    end if
End If

--  作者:steven306
--  发布时间:2014/8/22 15:15:00
--  
问题解决,谢谢。追加一问题:上边的代码生成的Preid的值为:XM1737,而我只想把除XM外的1737做为查找关键字,如何改?

Dim dr As DataRow 
    dr = DataTables("Project").SQLFind("PNumber = \'" & e.DataRow("Preid") & "\'" )

--  作者:Bin
--  发布时间:2014/8/22 15:23:00
--  
dr = DataTables("Project").SQLFind("PNumber = \'" & e.DataRow("Preid").Substring(2,e.DataRow("Preid").lenght-2) & "\'" )
--  作者:steven306
--  发布时间:2014/8/22 15:36:00
--  
上面的代码我是放到datacolchanged中的,他提示未找到类型“String”的公共成员“lenght”。
--  作者:steven306
--  发布时间:2014/8/22 15:37:00
--  
preid字段为字符型字段
--  作者:Bin
--  发布时间:2014/8/22 15:39:00
--  
笔误length
--  作者:steven306
--  发布时间:2014/8/22 15:47:00
--  
OK,问题解决。感谢BIN老师,祝您周末愉快。