以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 从EXCEL提取值 的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=146532) |
||||||||
-- 作者:HANZHIGANG -- 发布时间:2020/2/25 21:46:00 -- 从EXCEL提取值 的问题 DataTables("表B").DataRows.Clear()
假设EXCLE有10条数据,其中有5条是重复的,而狐表中的【总表】中有20条数据(必然重复的更多一些)与这10条完全相符,如何能完不多不少的匹配出EXCEL中的10条数据呢 这段代码只能实现将重复数据中的第一条填写上了,其他的则为空 |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/2/25 22:17:00 -- 没看懂,请截图对应说明一下 |
||||||||
-- 作者:HANZHIGANG -- 发布时间:2020/2/26 20:05:00 -- ![]() ![]() ![]() ![]() ![]() ![]() |
||||||||
-- 作者:HANZHIGANG -- 发布时间:2020/2/26 20:12:00 -- 请老师指导一下代码怎么修改 |
||||||||
-- 作者:HANZHIGANG -- 发布时间:2020/2/27 9:14:00 -- [求助]麻烦老师指导 [求助]麻烦老师指导 |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/2/27 9:31:00 -- 和之前的用法差不多的:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=146428&skin=0,查找数据使用find方法 For n As Integer = 1 To Sheet.Rows.Count -1 Dim a As String = sheet(n,0).Text Dim b As String = sheet(n,1).Text Dim c As String = sheet(n,2).Text Dim d As String = sheet(n,3).Text Dim dr As DataRow = DataTables("表A").Find("上游客户 = \'" & a & "\' and 商品车=\'" & b & "\' and 运输单号=\'" & c & "\' and 上游动态=\'" & d & "\'") If dr Isnot Nothing Then \'如果存在同编号的订单 dr("上游对账金额") = sheet(n, 4).Text end if next
|
||||||||
-- 作者:HANZHIGANG -- 发布时间:2020/2/27 17:55:00 -- 执行的效果如上 老师,还是不行啊,表内有相同数据的行,只第一行能代入数据,后面的就都代不出来还得您来指导下, 代码如下。 Dim dlg As New OpenFileDialog dlg.Filter = "Excel文件|*.xls;*.xlsx" If dlg.ShowDialog =DialogResult.OK Then Dim Book As New XLS.Book(dlg.FileName) Dim Sheet As XLS.Sheet = Book.Sheets(0) For n As Integer = 1 To Sheet.Rows.Count -1 Dim a As String = sheet(n,0).Text Dim b As String = sheet(n,1).Text Dim c As String = sheet(n,2).Text Dim d As String = sheet(n,3).Text Dim m As String = sheet(n,4).Text Dim f As String = sheet(n,5).Text Dim dr As DataRow = DataTables("总表").Find("上游客户 = \'" & a & "\' and 商品车 =\'" & b & "\' and 运输单号 =\'" & c & "\'and 上游动态 =\'" & d & "\' ") If dr IsNot Nothing Then \'如果存在同编号的订单 dr("上游对账金额") = sheet(n, 5).Text Else Dim nr As DataRow = DataTables("表B").AddNew nr("上游客户") = a nr("商品车") = b nr("运输单号") = c nr("上游动态") = d nr("数量") = m nr("上游对账金额") = f End If Next |
||||||||
-- 作者:HANZHIGANG -- 发布时间:2020/2/27 18:37:00 --
请指导
|
||||||||
-- 作者:有点蓝 -- 发布时间:2020/2/28 8:39:00 -- 如果有多个相同的行Find改为使用Select用法:http://www.foxtable.com/webhelp/topics/0400.htm |