Foxtable(狐表)用户栏目专家坐堂 → [讨论]简捷代码


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

主题:[讨论]简捷代码

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


加好友 发短信
等级:小狐 帖子:316 积分:2899 威望:0 精华:0 注册:2009/7/25 18:29:00
[讨论]简捷代码  发帖心情 Post By:2019/6/4 14:17:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:111.png
图片点击可在新窗口打开查看

各位大师下午好!!
如上图,在问题类型分项中的五列为逻辑列,想法是在分项中选为真时,“问题类型”列的值等于分项的列名。我的代码如下,但总觉得应该有简捷的方法,请大师指导,谢谢:
If e.DataCol.Name = "乱占" Then '如果是乱占列的内容变动
    If e.NewValue = True Then '而且变动后的值是True(已勾选)
        e.DataRow("问题类型") = "乱占" '那么当前行的问题类型为乱占
Else
e.DataRow("问题类型") = Nothing '否则为空值
    End If
End If

If e.DataCol.Name = "乱采" Then
    If e.NewValue = True Then 
        e.DataRow("问题类型") = "乱采"
Else
e.DataRow("问题类型") = Nothing 
    End If
End If

If e.DataCol.Name = "乱堆" Then
    If e.NewValue = True Then 
        e.DataRow("问题类型") = "乱堆"
Else
e.DataRow("问题类型") = Nothing 
    End If
End If

If e.DataCol.Name = "乱建" Then
    If e.NewValue = True Then 
        e.DataRow("问题类型") = "乱建"
Else
e.DataRow("问题类型") = Nothing 
    End If
End If

If e.DataCol.Name = "其他" Then
    If e.NewValue = True Then 
        e.DataRow("问题类型") = "其他"
Else
e.DataRow("问题类型") = Nothing 
    End If
End If

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


加好友 发短信
等级:狐神 帖子:4760 积分:34608 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2019/6/4 14:25:00 [只看该作者]

Select Case e.DataCol.Name
    Case "乱占","乱采","乱堆","乱建","其他"
        If e.NewValue = True Then '而且变动后的值是True(已勾选)
            e.DataRow("问题类型") = e.DataCol.Name '那么当前行的问题类型为乱占
        Else
            e.DataRow("问题类型") = Nothing '否则为空值
        End If
End Select

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


加好友 发短信
等级:小狐 帖子:316 积分:2899 威望:0 精华:0 注册:2009/7/25 18:29:00
  发帖心情 Post By:2019/6/4 14:51:00 [只看该作者]

太感谢老师,这确实很简捷了,再次谢谢!!

 回到顶部