以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]有条件的跨表引用 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=59342) |
-- 作者:huangfanzi -- 发布时间:2014/11/2 17:18:00 -- [求助]有条件的跨表引用 假定表A有字段 销售日期 产品名称 销售单价 成本单价 单位毛利 假定表B有字段 月份 产品名称 成本单价 我希望在表A中 输入销售日期、产品名称与销售单价后,成本单价自动从表B中引用过来,再通过表达式算出毛利 不带条件的引用我根据帮助文件已经会用,但带条件的就用不来了,我希望达到的效果是1月份的产品销售对应此产品1月份的成本,一一对应。 求老师帮助!!!
|
-- 作者:有点甜 -- 发布时间:2014/11/2 17:22:00 -- 方法一:表A加入月份列,A、B表用月份和产品名称关联,表A直接引用父表数据;
方法二:用find函数查找 http://www.foxtable.com/help/topics/1451.htm
|
-- 作者:huangfanzi -- 发布时间:2014/11/2 18:54:00 -- 问题解决了,说下之前失败原因供有需要的朋友参考 在EXCEL中,遇到这个问题我常用的办法就是把表A中日期先转换成年月的字符串,然后把这个年月字符串与产品名连起来作为一个查找匹配码,在表B中同样的方法生成年月产品名的匹配码,然后用Vlookup函数引用。 在FOXTABLE中,我一开始也是用这思路进行操作,但失败了,原因在于我通过了表达式的方式生成了匹配码,然后用这匹配码进行跨表引用的自动更新,设置的条件就是表A与表B的匹配码一致,这个表达式就是问题所在,因为不能用表达式进行匹配引用的,要在表事件中生成表A与表B的匹配码数据列,用数据列中的匹配码就能正常进行跨表引用了, 这是跨表引用的网址:http://www.foxtable.com/help/index.html?n=1451.htm 我参考的代码就是: 上一节提到,如果在订单表的DataColChanged事件中加入如下代码:
If e.DataCol.Name = "品名" Then \'如果内容发生变动的是品名列 |