以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  单元格多值的简化  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=79378)

--  作者:sf020cf
--  发布时间:2015/12/30 10:04:00
--  单元格多值的简化


图片点击可在新窗口打开查看此主题相关图片如下:2015-12-30_095025.jpg
图片点击可在新窗口打开查看
表中项目单元格是多个项目一起构成的用|隔开 现在更新会有更多  其中多行是这些 Forever New、IDI、LG、傲胜、白石钙、大昌华嘉、大昌洋行、大恒贸易、福州三通、宏一商贸、会展、乐斯福(广州)、李锦记、鲁茨、魔石、南新无纺布、上海瑞勋、新上化学、中电、ABB、施耐德、飞利浦、会成百特、道康宁、卓逸沃尔玛、曼秀雷敦、无限极、LG胶粒

多行是

麦德龙、麦德龙PAXD干货、麦德龙广州分拨中心、麦德龙直送、麦德龙转仓、箭牌、亚太、DHL

多行又是

思念食品、玛氏华南运输

而代码是这样子的 If DataTables("价目表").DataCols.Contains("车型_" & dr("车型")) Then
            Dim jdrs As List(of DataRow) = DataTables("价目表").Select("(\'|\' + 项目 + \'|\') like \'|%" & dr("项目") & "%|\' and 城市 like \'%" & dr("城市") & "%\'")
            For Each jdr As DataRow In jdrs
                If dr("地点") Like "*" & jdr("地点") & "*" Then
                    dr("运费") = jdr("车型_" & dr("车型"))
                    Exit For
总感觉 让它去找个项目like项目都是很费时的 更何况还有好多地方需要运算 请教一下版主 我该如何更改表或者代码让运算得以简化 劳烦红版了


--  作者:大红袍
--  发布时间:2015/12/30 10:18:00
--  

方法一:做一个子表,把多个项目,弄成子表多行这样。先查子表,然后得到父表的数据;

 

方法二:直接在原表,一个项目一行数据。