以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口中表格,平时只有特定列能编辑,按了“编辑按钮”后,其他列也能编辑  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=95083)

--  作者:szsmall
--  发布时间:2017/1/9 22:06:00
--  窗口中表格,平时只有特定列能编辑,按了“编辑按钮”后,其他列也能编辑
窗口表格里的行,平时通过在PrepareEdit设代码,只有“审批”列能用,其他列锁定。
现希望能按下“编辑”按钮后,其他列也能改动。试过用Tables("").AllowEdit = True,没有用。

PrepareEdit:
e.Cancel = True
Select Case e.Col.name
    Case "审批"
        e.cancel = False
End Select


图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:cai6.table




[此贴子已经被作者于2017/1/9 22:07:01编辑过]

--  作者:有点蓝
--  发布时间:2017/1/9 22:39:00
--  
PrepareEdit:

Select Case e.Col.name
    Case "审批"
    Case Else
        If Forms("材料总").Opened = False OrElse Forms("材料总").Controls("CheckBox1").Checked = False Then
            e.cancel = True
        End If
End Select

--  作者:szsmall
--  发布时间:2017/1/10 15:16:00
--  
这段代码怎么理解 (红色问号)

Select Case e.Col.name
    Case "审批"    \'如果正在编辑的是“审批”列
    Case Else      ‘??
        If Forms("材料总").Opened = False OrElse Forms("材料总").Controls("CheckBox1").Checked = False Then   ‘窗口() 或者 控件 状态为False
            e.cancel = True  \'表格不能编辑
        End If
End Select

--  作者:有点色
--  发布时间:2017/1/10 15:19:00
--  
 如果是审批列,不做处理;其余的情况,就执行下面的代码。