以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助]如何实现此功能 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=121436) |
-- 作者:vxzx -- 发布时间:2018/7/6 11:00:00 -- [求助]如何实现此功能 某一行中,【第一列】单元格内选择 “A”,则出现“B”“C”“D”选择项,选择任意一项后,选项内容出现在该行的【第二列】单元格内? 有没有相关的资料,谢谢。
|
-- 作者:有点甜 -- 发布时间:2018/7/6 11:07:00 -- 参考
http://www.foxtable.com/webhelp/scr/1528.htm
http://www.foxtable.com/webhelp/scr/1843.htm
|
-- 作者:vxzx -- 发布时间:2018/7/7 8:22:00 -- 有没有办法能实现,[第一列]与[第二列]相互约束? 即[第一列]选择 “A”,则出现“B”“C”“D”选择项出现在[第二列],而在[第二列]选择“B”“C”“D”,则[第一列]只出现"A"的结果? |
-- 作者:有点蓝 -- 发布时间:2018/7/7 9:10:00 -- 用法一样啊,差不多也就是把列名调换一下位置而已 |
-- 作者:vxzx -- 发布时间:2018/7/9 19:19:00 -- 一直改都没有达到 我想要的功能,就是 当两列是空值时,分别显示自己的下拉项,当第一列选择后,第二列显示对应的下拉项。当清空两列时,再显示回各自的下拉项,这时在第二列选择下拉项后,第一列又会显示对应的下拉项。 试了很多都不行,没学过编程,只能自己摸索,都不知道错在哪。 If e.Row("产品名称") Is Nothing AndAlso e.Row("配方名称") Is Nothing Then Dim dt As DataTable = DataTables("下拉项目") Dim dr As DataRow For Each c As Col In CurrentTable.Cols dr = dt.Find("[表] = \'" & CurrentTable.DataTable.Name & "\' And [列] = \'" & c.Name & "\'") If dr IsNot Nothing Then c.ComboList = dr("列的下拉项目") End If Next End If If e.IsFocusCell Then If e.Col.Name = "配方名称" Then Dim dr As DataRow dr = DataTables("配方对应产品").Find("对应料品名称 = \'" & e.Row("产品名称") & "\'") If dr IsNot Nothing e.Col.ComboList = dr("配方名称汇总") End If End If End If If e.IsFocusCell Then If e.Col.Name = "产品名称" Then Dim dr As DataRow dr = DataTables("配方对应产品").Find("配方名称汇总 = \'" & e.Row("配方名称") & "\'") If dr IsNot Nothing e.Col.ComboList = dr("对应料品名称") End If End If End If |
-- 作者:有点蓝 -- 发布时间:2018/7/9 20:17:00 -- If e.IsFocusCell Then Dim dt As DataTable = DataTables("下拉项目") If e.Col.Name = "配方名称" Then Dim dr As DataRow dr = DataTables("配方对应产品").Find("对应料品名称 = \'" & e.Row("产品名称") & "\'") If dr IsNot Nothing e.Col.ComboList = dr("配方名称汇总") Else dr = dt.Find("[表] = \'" & e.Table.Name & "\' And [列] = \'" & e.Col.Name & "\'") If dr IsNot Nothing Then e.Col.ComboList = dr("列的下拉项目") End If End If ElseIf e.Col.Name = "产品名称" Then Dim dr As DataRow dr = DataTables("配方对应产品").Find("配方名称汇总 = \'" & e.Row("配方名称") & "\'") If dr IsNot Nothing e.Col.ComboList = dr("对应料品名称") Else dr = dt.Find("[表] = \'" & e.Table.Name & "\' And [列] = \'" & e.Col.Name & "\'") If dr IsNot Nothing Then e.Col.ComboList = dr("列的下拉项目") End If End If End If End If
|
-- 作者:vxzx -- 发布时间:2018/7/10 8:48:00 -- 感谢大神,按你的码,改了下名称就解决了 。 |