以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  通过命令窗口执行类似VLOOKUP的代码执行提示错误  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=161445)

--  作者:ganlanlee
--  发布时间:2021/3/17 16:22:00
--  通过命令窗口执行类似VLOOKUP的代码执行提示错误

想【A表】的渠道订单号在【应付金额表】的本期订单号匹配,然后在A表的本期结算金额填入匹配上的应付金额表的应付金额,相当于VLOOKUP(渠道订单号,应付金额表!本期订单号:应付金额,3,FLASE
查用户指南,可以用一下代码做到,但是用命令窗口看效果的时候,提示错误。
If e.DataCol.Name = "渠道订单号" Then \'如果内容发生变动的是品名列
    If e.NewValue Is Nothing Then \'如果新值是空白,也就是品名列的内容为空
        e.DataRow("本期结算金额") = Nothing \'那么清空此行单价列的内容
    Else
        Dim dr As DataRow
        \'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
        dr = DataTables("应付金额").Find("[本期订单号] = \'" & e.NewValue & "\'")
        If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
            e.DataRow("本期结算金额") = dr("应付金额") 
        End If
    End If
End If
[此贴子已经被作者于2021/3/18 12:00:04编辑过]

--  作者:有点蓝
--  发布时间:2021/3/17 16:24:00
--  
这种代码要放到表事件里执行,不能在命令窗口测试:http://www.foxtable.com/webhelp/topics/1445.htm
--  作者:ganlanlee
--  发布时间:2021/3/17 16:27:00
--  
嗯,试过也一样提示这个
图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20210317162500.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2021/3/17 16:38:00
--  
放到DataColChanged事件,先看看:http://www.foxtable.com/webhelp/topics/0604.htm,不同事件有不同的用途和参数,不是随便把代码放到任意的事件都可以的。如果可以没有必要搞那么多事件全部堆到一起算了。

建议还是先花时间看几遍基础:http://www.foxtable.com/webhelp/topics/1592.htm

--  作者:ganlanlee
--  发布时间:2021/3/17 17:02:00
--  
我目前用到的功能不多,现在这个表就差VLOOKUP这个,而且使用说明,和视频我也看了,但是我还是不太理解上面说的,没有整个实例,有点难消化。我这个表平时是用于结算的,一周结算一次,一周导入1次数据,然后筛选本期的数据导出和打印,以前用EXCEL,但是现在6万多条,条件求和EXCEL太卡了。然后就想用狐表实现,现在sumif可以用表关联和表达式做的,就是VLOOKUP实现不了
--  作者:有点蓝
--  发布时间:2021/3/17 17:12:00
--  
不管功能多不多,基础要学好。

现在让您放到DataColChanged事件,如果还是不懂,可以上传实例

--  作者:ganlanlee
--  发布时间:2021/3/17 17:14:00
--  
我的数据已经导入里面了,不知道是属于编辑前还是编辑后,
--  作者:ganlanlee
--  发布时间:2021/3/17 17:20:00
--  
现在代码提交了,ed和ing的都放过,但是出不来值,我慢慢研究吧,谢谢了
--  作者:有点蓝
--  发布时间:2021/3/17 17:38:00
--  
如果已经有数据,选中订单号列,重置一下列:http://www.foxtable.com/webhelp/topics/1469.htm
--  作者:ganlanlee
--  发布时间:2021/3/17 21:12:00
--  
哦原来是要重置列,谢谢,数据出来了
[此贴子已经被作者于2021/3/18 12:00:34编辑过]