Foxtable(狐表)用户栏目专家坐堂 → [求助]有一入數方法求助,在EXCEL能做到,不知在狐表能否輕易做到,簡單說:是活性下拉列表選項。


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

主题:[求助]有一入數方法求助,在EXCEL能做到,不知在狐表能否輕易做到,簡單說:是活性下拉列表選項。

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


加好友 发短信
等级:小狐 帖子:365 积分:2693 威望:0 精华:1 注册:2011/11/25 7:55:00
  发帖心情 Post By:2013/1/20 11:27:00 [显示全部帖子]

示例二

本示例请参考CaseStudy目录下的示例文件“自动输入.Table”。

假定项目中有一个名为“行政区域”的基础数据表,这个表已经输入了全国所有县级行政区域的资料,包括省市、市县、区号、邮编四列;现在我们在客户表中输入数据,假定客户表也有这么四列,显然最好的输入方式是,客户表省市列能够根据行政区域表的设置,列出所有的省市供选择,选择省市之后,市县列能列出该省市所有的市县供选择,而选择市县之后,区号和邮编能够自动输入。

区号和邮编的自动输入,我们将在后续章节中介绍,我们现在看看如何利用PrepareEdit实现动态的列表项目。

1、先在项目事件AfterOpenProject中设置如下代码:

Tables("客户").Cols("省市").Combolist = DataTables("行政区域").GetComboListString("省市")

这样每次打开项目,就会自动从行政区域表提取不重复的省市名称,作为客户表省市列的列表项目。

2、在客户表的PrepareEdit事件中输入如下代码:

If e.Col.Name = "县市" Then '如果正在编辑的是县市列
    '从行政区域表提取该省市的县市作为列表项目
     e.Col.Combolist = DataTables("行政区域").GetComboListString("县市", "[省市] = '" & e.Row("省市") & "'")
End
If

这样在客户表县市列输入内容的时候,会自动根据已经输入的省市,列出该省市的全部县市供选择。


 回到顶部