以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于锁定的问题,不知错哪了  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=60901)

--  作者:huangfanzi
--  发布时间:2014/12/3 15:52:00
--  [求助]关于锁定的问题,不知错哪了
Tables("原料采购合同审核主窗口_Table_原料采购_副本").AllowEdit = False
Tables("原料采购合同审核主窗口_Table_原料采购_副本").Cols("审核").AllowEdit = True

上面二行代码我写在了一个窗口的afterload事件中,我的目的是打开这个窗口后,table中的表先全部锁定,然后再解锁“审核”这个逻辑列,以方便让审核人员在这一列上打勾代表审核,但运行这个“审核”一直处于锁定,不能编辑,请老师指导,谢谢!

--  作者:Bin
--  发布时间:2014/12/3 15:56:00
--  
你把整个表锁定了. 你再操作列没有意义.

你要某列可以编辑,你就锁定其他列,解锁这个列.

好比你把大门给锁了,你打开房间的门,别人也进不去你的房间,你要进制进入其他房间,允许进入这个房间,就锁上其他房间的们,打开这个房间的们.

--  作者:huangfanzi
--  发布时间:2014/12/3 16:10:00
--  
既然这样,有什么办法可以让我实现整张表的列先锁定,因为还在开发阶段,不知什么时候我会在表上加个列,如果用固化的代码锁定所有列不是很好。
--  作者:Bin
--  发布时间:2014/12/3 16:11:00
--  
for each c as col in tables(XX).cols
  c.AllowEdit =false
next

--  作者:有点甜
--  发布时间:2014/12/3 16:13:00
--  
以下是引用huangfanzi在2014-12-3 16:10:00的发言:
既然这样,有什么办法可以让我实现整张表的列先锁定,因为还在开发阶段,不知什么时候我会在表上加个列,如果用固化的代码锁定所有列不是很好。

 

For Each c As Col In Tables("原料采购合同审核主窗口_Table_原料采购_副本").Cols
    c.AllowEdit = False
Next

 

Tables("原料采购合同审核主窗口_Table_原料采购_副本").Cols("审核").AllowEdit = True