以文本方式查看主题

-  易表在线答疑  (http://www.egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://www.egrid2000.com/dvbbs/list.asp?boardid=2)
----  如何一键从其他表格中提取所需数据  (http://www.egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=40470)

--  作者:macd89
--  发布时间:2018/1/15 10:03:00
--  如何一键从其他表格中提取所需数据
各位好:请教用易表如何设一按钮在当前表中根据条件提取另一表格同一人的相关所需数据。例如:表1中,“补助类别”等于相关数据后,“数据提取”按钮如何在“表1”的“现金支付1”等在表2中提取“现金1”数据,同时“表1”“现金支付1”的数据不提取可以人工输入。谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:年终慰问.egd


--  作者:lyy001
--  发布时间:2018/1/15 11:33:00
--  

SetCellText(gridname,row,"现金支付1",findtext("表2","现金1","姓名","=",[姓名]))

是否符合你的要求?

如果手动输入“现金支付1”的情况很少,建议表1增加个逻辑列,"现金支付1"直接设刷新公式:if([逻辑列]=-1,[现金支付1],findtext("表2","现金1","姓名","=",[姓名])),需要手工输入的时候逻辑列打钩。


--  作者:macd89
--  发布时间:2018/1/15 14:25:00
--  
非常感谢lyy001的帮助。表1只有1个“现金支付1”列用上述公式相当好用了。如果在表1有“现金支付2”或多个数据,用上述公式就无法同时提前了。比如现金支付2对应表2“现金2”、现金支付3对应表2“现金3”。麻烦再帮忙看看。谢谢!!!


--  作者:lyy001
--  发布时间:2018/1/16 8:19:00
--  

SetCellText(gridname,row,"现金支付1",findtext("表2","现金1","姓名","=",[姓名]))

and SetCellText(gridname,row,"现金支付2",findtext("表2","现金2","姓名","=",[姓名]))

and SetCellText(gridname,row,"现金支付3",findtext("表2","现金3","姓名","=",[姓名]))

 

这样试一下,如果很多列,应该可以用eval()来简化公式,这个函数我用不来,得找高手帮忙看一下


--  作者:macd89
--  发布时间:2018/1/16 16:05:00
--  
谢谢lyy001!!!