以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 手工编码填充数据问题,请教老师 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=28185) |
-- 作者:mamuaiqing -- 发布时间:2013/1/22 3:09:00 -- 手工编码填充数据问题,请教老师 帮助中代码如下:
Dim Vals As List(of String())
如果来源表为关联表,代码要怎么改?比如关联表名"表A.表B",用Tables("表A.表B")提示错误,DataTables("表A.表B")提示不存在"表A.表B"请教老师 |
-- 作者:lin_hailun -- 发布时间:2013/1/22 8:43:00 -- 这个提示是正常的。 对于 表A.表B,DataTables("表A.表B") 实际上是不存在的,只是临时生成的一个Table 你可以这样用,比如 Tables("表A.表B").DataTable直接使用,这个也等同于DataTables("表B") |
-- 作者:mamuaiqing -- 发布时间:2013/1/22 16:46:00 -- 以下是引用lin_hailun在2013-1-22 8:43:00的发言:
这个提示是正常的。 对于 表A.表B,DataTables("表A.表B") 实际上是不存在的,只是临时生成的一个Table 你可以这样用,比如 Tables("表A.表B").DataTable直接使用,这个也等同于DataTables("表B") 这样调整执行后连同"表B"中的数据也复制过去了,没实现只复制"表A.表B"内容,在代码中想再加了个排除,排除掉"接收表"与"表A.表B"存在相同的内容,只复制"表A.表B"与"接收表"中不存在的内容,一行数据好解决,多行数据头大了,摸不清方向了,再次请教老师
|
-- 作者:lin_hailun -- 发布时间:2013/1/22 17:17:00 -- 以下是引用mamuaiqing在2013-1-22 16:46:00的发言: 这样调整执行后连同"表B"中的数据也复制过去了,没实现只复制"表A.表B"内容,在代码中想再加了个排除,排除掉"接收表"与"表A.表B"存在相同的内容,只复制"表A.表B"与"接收表"中不存在的内容,一行数据好解决,多行数据头大了,摸不清方向了,再次请教老师
呃,这样说吧,表A.表B 实际上就是 Datatables("表B").GetUniqueValues("关联列 = \'" & Tables("表A").current("关联列") & "\'", "xxx") 至于你说的排除接收表存在的内容。你比较一下就行了。 |
-- 作者:zerov -- 发布时间:2013/1/22 20:37:00 -- 还是有点不明白关联表的关系,能举例说明一下吗? |
-- 作者:mamuaiqing -- 发布时间:2013/1/22 23:31:00 -- 以下是引用lin_hailun在2013-1-22 17:17:00的发言:
呃,这样说吧,表A.表B 实际上就是 Datatables("表B").GetUniqueValues("关联列 = \'" & Tables("表A").current("关联列") & "\'", "xxx") 至于你说的排除接收表存在的内容。你比较一下就行了。 明白林老师的代码了("关联列 = \'" & Tables("表A").current("关联列") & "\'"这行代码设置了获得不重复值的条件,"xxx"代表的是获得不重复的列值
排除接收表应该是再利用这个代码做成2张表比较后获得值填入 |
-- 作者:mamuaiqing -- 发布时间:2013/1/22 23:43:00 -- 以下是引用zerov在2013-1-22 20:37:00的发言:
还是有点不明白关联表的关系,能举例说明一下吗? 关联表的关系其实很简单,比如上面说的"表A.表B"说简单点这个表其实就是一个临时表,用的时候存在,不用的时候不存在,至于什么是临时表帮助中说的很清楚,可以参考下
帮助文件中有个"用Table控件模拟关联表"其实就是把关联表中的代码解剖出来了
个人了解是这样,希望对你有帮助
|
-- 作者:mamuaiqing -- 发布时间:2013/1/23 3:57:00 -- Datatables("表B").GetUniqueValues("关联列 = \'" & Tables("表A").current("关联列") & And 重复列 =\'" & Tables("接收表").current("重复列") & "\'", "xxx") 学生的代码是否正确,麻烦林老师核对下。 后面的代码是排除了表B跟接收表中相同的重复列的内容 |
-- 作者:lin_hailun -- 发布时间:2013/1/23 9:10:00 -- 以下是引用mamuaiqing在2013-1-23 3:57:00的发言: Datatables("表B").GetUniqueValues("关联列 = \'" & Tables("表A").current("关联列") & And 重复列 =\'" & Tables("接收表").current("重复列") & "\'", "xxx") 学生的代码是否正确,麻烦林老师核对下。 后面的代码是排除了表B跟接收表中相同的重复列的内容 如果结果正确就正确吧。我还不清楚你数据表的数据是怎样的。 我还以为要在导入的时候去接收表里find一下呢。 |
-- 作者:mamuaiqing -- 发布时间:2013/1/23 17:41:00 -- 代码改成这样不添加了,数据怎么改都无效 Dim Vals As List(of String())
用Find是怎么设置?请教林老师 |