以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  填充数据  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=153739)

--  作者:爱相随
--  发布时间:2020/8/21 9:55:00
--  填充数据
老师,下面的代码执行后提示:语法错误:“IsNot”运算符后缺少操作数。,没搞明白,请指导,谢谢!
For Each r As Row In CurrentTable.Rows    
    Dim f As New Filler
    
    f.SourceTable = DataTables("序时账") \'指定数据来源
    f.SourceCols = "账套号,核算单位,科目编码,科目名称,项目名称" \'指定数据来源列
    f.DataTable = DataTables("项目科目总账") \'指定数据接收表
    f.DataCols = "账套号,核算单位,科目编码,科目名称,项目名称" \'指定数据接收列
    f.ExcludeExistValue = True
    f.filter = "项目名称 IsNot Nothing "
    f.Fill() \'填充数据
Next
MainTable = Tables("项目科目总账")
[此贴子已经被作者于2020/8/21 9:57:44编辑过]

--  作者:有点蓝
--  发布时间:2020/8/21 9:56:00
--  
f.filter = "项目名称 Is Not null"
--  作者:爱相随
--  发布时间:2020/8/21 10:09:00
--  
谢谢老师!!
--  作者:爱相随
--  发布时间:2020/8/21 10:11:00
--  
填充不到2万行的数据都很慢,不知是什么原因!!
--  作者:有点蓝
--  发布时间:2020/8/21 10:18:00
--  
事件代码,或者表达式列计算的影响
--  作者:爱相随
--  发布时间:2020/8/21 10:49:00
--  
老师,再请教个问题:
填充表数据的要求有两种,一种是将A表的内容按某种条件顺序(填充的内容前后有可能是重复的)地填充到另一张表B,另一种是将表A的所有需要填充列不重复地填充到另一张表B,他们的代码怎么区分?
比如第一种,要将表A的产品名称列,客商名称两列填充到表B,表A第一行的产品名称和客商名称与第三行的产品名称和客户名称是一样的,但希望填充到表B后仍存在两行一样重复的;第二种就是填充到表B后,数值相同的行只有第一行,后面与第一行的值重复的行就不再填充过来。


--  作者:有点蓝
--  发布时间:2020/8/21 10:57:00
--  
ExcludeExistValue是判断所有列的。如果要判断指定列,改为这种:http://www.foxtable.com/webhelp/topics/1533.htm

可以结合参考这里加上find查询判断:http://www.foxtable.com/help/topics/2137.htm

--  作者:爱相随
--  发布时间:2020/8/21 11:01:00
--  
另外,如果要将填充条件改为根据窗口控件的值,f.filter = "项目名称 Is Not null"代码怎么修改。
比如菜单按钮打开一个窗口,窗口中有二个控件,一个是填充条件控件可以选择值,另一个是按钮控件执行填充代码,第一个控件是选择要填充的值,第二个控件是执行填充代码,但代码中的条件是第一个控件中的值。如果第一个控件中没有选择值,则代码不执行。
[此贴子已经被作者于2020/8/21 11:05:17编辑过]

--  作者:有点蓝
--  发布时间:2020/8/21 11:19:00
--  
窗口条件参考:http://www.foxtable.com/webhelp/topics/1058.htm
[此贴子已经被作者于2020/8/21 11:19:06编辑过]