以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助!输入限制  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=40097)

--  作者:zchlln
--  发布时间:2013/9/9 14:37:00
--  求助!输入限制
我想让表1中其中一列的单元格只能输入表2的其中一列的值 该如何处理
--  作者:狐狸爸爸
--  发布时间:2013/9/9 14:39:00
--  

你可以设置列表项目,直接选:

http://www.foxtable.com/help/topics/0057.htm

 


--  作者:zchlln
--  发布时间:2013/9/9 14:44:00
--  
但是我想要只能输入那一列的值
刚才那种方法还是可以输入别的值
--  作者:狐狸爸爸
--  发布时间:2013/9/9 14:48:00
--  
在设置列表项目的时候,你将“允许直接输入”设置为false就行。
--  作者:zchlln
--  发布时间:2013/9/9 14:52:00
--  
嗯 这样可以 但是如果数据量很大的来在里面找很麻烦 最好还是输入的那种
--  作者:zchlln
--  发布时间:2013/9/9 14:57:00
--  
有什么方法 既可以输入 又能检查出来呢?
--  作者:狐狸爸爸
--  发布时间:2013/9/9 14:59:00
--  

这个要写代码,不过也很简单,例如要求表A第一列只能输入表B第一列已经有的数据,那么设置表A的DataColChanging事件代码为:

 

If e.DataCol.name = "第一列" Then \'如果输入的是第一列
    If e.NewValue > "" Then
        If DataTables("表B").Find("第一列 = \'" & e.NewValue & "\'") Is Nothing Then ‘判断表B第一列是否存在对应的数据
            e.cancel =True
        End If
    End If
End If

 

 


--  作者:zchlln
--  发布时间:2013/9/9 15:03:00
--  
谢谢