以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  不为空判断  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=178973)

--  作者:nxqtxwz
--  发布时间:2022/8/1 11:58:00
--  不为空判断

DrawCell事件中这么写为什么不行呢。



如果校内直聘_聘用人单元格已经填写,则后面的“校内竞聘_第一轮竞聘_申报人","校内竞聘_第一轮竞聘_聘用人","校内竞聘_第二轮竞聘_申报人","校内竞聘_第二轮竞聘_聘用人”全部用“-”代替

If e.DataCol.name = "校内直聘_聘用人" Then
    If e.DataRow.isnull("校内直聘_聘用人" )  = False Then
        Select  Case e.Col.Name
            Case  "校内竞聘_第一轮竞聘_申报人","校内竞聘_第一轮竞聘_聘用人","校内竞聘_第二轮竞聘_申报人","校内竞聘_第二轮竞聘_聘用人","校内调剂"
                e.text ="-"
            End  Select
        End If
    End If


--  作者:有点蓝
--  发布时间:2022/8/1 13:31:00
--  
        Select  Case e.Col.Name
            Case  "校内竞聘_第一轮竞聘_申报人","校内竞聘_第一轮竞聘_聘用人","校内竞聘_第二轮竞聘_申报人","校内竞聘_第二轮竞聘_聘用人","校内调剂"
If e.Row.isnull(e.Col.Name)  = False Then
                e.text ="-"
endif
            End  Select
        End If

--  作者:nxqtxwz
--  发布时间:2022/8/1 15:29:00
--  
不是我要的结果
     校内直聘   校内竞聘  校内调剂    跨校竞聘                
   管理员                             
   总务员
                           
   干事                           
                              

我的设计是:
1、如果管理员的这一行,校内直聘列不为空,则这一行的校内竞聘校内调剂跨校竞聘就都填写“-”
2、如果总务员的这一行的校内竞聘列不为空,这总务员这一行的其它单元格就填写“-”


[此贴子已经被作者于2022/8/1 15:53:04编辑过]

--  作者:有点蓝
--  发布时间:2022/8/1 15:48:00
--  
没看懂。请使用实际的表格结构和数据说明问题
--  作者:nxqtxwz
--  发布时间:2022/8/1 16:14:00
--  
大致意思就是:当前记录有一列不为空,当前记录的其它几列就用“-”表示或不能编辑。
[此贴子已经被作者于2022/8/1 16:14:34编辑过]

--  作者:有点蓝
--  发布时间:2022/8/1 16:21:00
--  
Select Case e.Col.Name
    Case "校内竞聘_第一轮竞聘_申报人", "校内竞聘_第一轮竞聘_聘用人", "校内竞聘_第二轮竞聘_申报人", "校内竞聘_第二轮竞聘_聘用人", "校内调剂"
        If e.Row.isnull("校内直聘_聘用人") = False Then
            e.text = "-"
        End if
End Select

不能编辑到prepareedit事件处理,e.text = "-"改为e.cancel=true