Foxtable(狐表)用户栏目专家坐堂 → 关于简码的问题


  共有2315人关注过本帖树形打印复制链接

主题:关于简码的问题

帅哥哟,离线,有人找我吗?
hongyefor
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:524 积分:3676 威望:0 精华:0 注册:2012/7/27 10:28:00
关于简码的问题  发帖心情 Post By:2015/7/5 14:45:00 [只看该作者]

假设为A表,第一列为“公司名”,第二列为“简码”我想要提取“公司名”列里的第3个字开始做为简码,限制为6个英文字母(需要大写)后面加3个数字

请问这事件代码怎么写呢?


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/5 14:55:00 [只看该作者]

 If e.DataCol.Name = "第一列" Then
    If e.newValue.Length > 3 Then
        Dim str As String = GetPy(e.NewValue.SubString(3),True)
        If str.Length > 6 Then str = str.SubString(0,6)
        e.DataRow("第二列") = str.ToUpper
    Else
        e.DataRow("第二列") = Nothing
    End If
Else
    e.DataRow("第二列") = Nothing
End If


 回到顶部
帅哥哟,离线,有人找我吗?
hongyefor
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:524 积分:3676 威望:0 精华:0 注册:2012/7/27 10:28:00
  发帖心情 Post By:2015/7/5 15:11:00 [只看该作者]

呃,有问题,当删除有数据行的时候跳出错误,如果多行复制是就会关闭
图片点击可在新窗口打开查看此主题相关图片如下:错误.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/5 15:23:00 [只看该作者]

If e.DataCol.Name = "第一列" Then
    If e.newValue.Length > 3 Then
        Dim str As String = GetPy(e.NewValue.SubString(3),True)
        If str.Length > 6 Then str = str.SubString(0,6)
        e.DataRow("第二列") = str.ToUpper
    Else
        e.DataRow("第二列") = Nothing
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2015/7/5 15:27:00 [只看该作者]

If e.DataCol.Name = "第一列" Then
    If e.DataRow.IsNull("第一列") = False
        If e.newValue.Length > 3 Then
            Dim str As String = GetPy(e.NewValue.SubString(3),True)
            If str.Length > 6 Then str = str.SubString(0,6)
            e.DataRow("第二列") = str.ToUpper
        Else
            e.DataRow("第二列") = Nothing
        End If
    Else
        e.DataRow("第二列") = Nothing
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
hongyefor
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:524 积分:3676 威望:0 精华:0 注册:2012/7/27 10:28:00
  发帖心情 Post By:2015/7/5 15:29:00 [只看该作者]

删除数据是还是有错误(不是删除行)


图片点击可在新窗口打开查看此主题相关图片如下:错误2.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
czy
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2015/7/5 15:30:00 [只看该作者]

5楼应该不会出错的

 回到顶部
帅哥哟,离线,有人找我吗?
hongyefor
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:524 积分:3676 威望:0 精华:0 注册:2012/7/27 10:28:00
  发帖心情 Post By:2015/7/5 15:32:00 [只看该作者]

还有能不能去掉企业名称里的()呢?

比如说 西门子(中国)有限公司  它会显示 Z(ZG)Y,但是我的目的是 ZZGYXG


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/5 15:36:00 [只看该作者]

DataColChanged事件

 

'''...
If e.DataCol.Name = "第一列" Then
    If e.DataRow.IsNull("第一列") = False
        Dim str As String = e.NewValue.Replace("(", "").replace(")", "").Replace("(", "").replace(")", "")
        If str.Length > 3 Then
            str = GetPy(str.SubString(3),True)
            If str.Length > 6 Then str = str.SubString(0,6)
            e.DataRow("第二列") = str.ToUpper
        Else
            e.DataRow("第二列") = Nothing
        End If
    Else
        e.DataRow("第二列") = Nothing
    End If
End If


 回到顶部