Foxtable(狐表)用户栏目专家坐堂 → 列锁定问题


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

主题:列锁定问题

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


加好友 发短信
等级:一尾狐 帖子:452 积分:3015 威望:0 精华:0 注册:2014/4/23 17:12:00
列锁定问题  发帖心情 Post By:2014/12/12 12:55:00 [只看该作者]

表A有四列(名称,种类,数量,件数),名称和种类从另一个表中取值,选择名称后种类自动取过来。
当种类 = “水果”时,数量列锁定,件数列解锁,当种类等于其他值时,数量列解锁,件数列锁定。
请问代码应该写在什么事件里,代码应该怎么写呢?

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/12/12 14:05:00 [只看该作者]


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


加好友 发短信
等级:一尾狐 帖子:452 积分:3015 威望:0 精华:0 注册:2014/4/23 17:12:00
  发帖心情 Post By:2014/12/12 14:46:00 [只看该作者]

从另外一个表取值可以做到,但是锁定列怎么可以做到啊。如果是在PrepareEdit事件里面写,那得怎么写?
这样不行啊
If e.Col.Name = "产品名称" Then
    If Tables("表A").Current("种类") <> "水果"
        Tables("表A").Cols("数量").AllowEdit = False
        Tables("表A").Cols("数量").AllowEdit = True
    Else
        Tables("表A").Cols("数量").allowedit = True
        Tables("表A").Cols("件数").allowedit = False
    End If
End If

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/12/12 14:47:00 [只看该作者]

你都没有参考帮助按照帮助的去做.

用的是e.cancel=true 

请您先看一下2楼帮助哦

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


加好友 发短信
等级:一尾狐 帖子:452 积分:3015 威望:0 精华:0 注册:2014/4/23 17:12:00
  发帖心情 Post By:2014/12/12 15:02:00 [只看该作者]

想了半天还是没想明白,劳烦BIN大哥指点迷津

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/12 15:05:00 [只看该作者]

PrepareEdit 事件

 

 If e.Col.Name = "数量" Then

     If e.Row("种类") = "水果" Then e.Cancel = True

 End If

 

 If e.Col.Name = "件数" Then

     If e.Row("种类") <> "水果" Then e.Cancel = True

 End If


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


加好友 发短信
等级:一尾狐 帖子:452 积分:3015 威望:0 精华:0 注册:2014/4/23 17:12:00
  发帖心情 Post By:2014/12/12 15:14:00 [只看该作者]

我是想锁定列,而不是禁止他编辑,而是给列加个小锁,这样更形象,请问在表事件可以完成这种操作吗?


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/12/12 15:19:00 [只看该作者]

这是不科学的,你这是根据当前行来判断的, 你把整列都锁定了, 那其他行符合条件的怎么办? 自相锚定的需求

只有禁止编辑才合理,  如果希望有标识,可以利用DrawCell事件

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


加好友 发短信
等级:一尾狐 帖子:452 积分:3015 威望:0 精华:0 注册:2014/4/23 17:12:00
  发帖心情 Post By:2014/12/12 15:24:00 [只看该作者]

明白了,谢谢

 回到顶部