Dim dr As DataRow = DataTables("表B").Find("code = '" & sheet(n,0).Value & "' ")
If dr Is Nothing Then
dr = DataTables("表B").AddNew()
End If
For m As Integer = 0 To nms.Length - 1
dr(nms(m)) = Sheet(n,m).Value
Next
你不是做了重复不录入的判断了么???
请注意一下,EXCEL表里的code列是有重复的,而coding列有空白行。但code+coding就没有重复行了。
问题是判断不生效啊,我的判断不重复的条件是code列和coding列组合起来是不重复的
如果不信,你点左上角>导入货物分类,选择那个EXCEL试试。
如果用你这一段,就只能合并5行,并且这5行本应是明细编号为空白对应的行,而实际上不是,例如明细编号为1.1.1.6和1.1.2.6以及1.1.3.6是不应当合并进来的。
用我那一段,就能合并21行。但如果我再合并一次,就会把明细编号为空白的那5行再增加一次进去。再合并一次,又会增加明细编号为空白的那5行.
我本意是不管合并多少次,都只合并那21行,除非code列+coding列的文本发生了变化,或增加了新行。