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)
Tables("成绩").StopRedraw()
Dim nms() As String = {"学校代码","单位名称","年级代码","班级","学籍号","考号","姓名"}
For n As Integer = 1 To Sheet.Rows.Count -1
Dim bh As String = sheet(n,0).Text
Dim dr As DataRow = DataTables("成绩").Find("考号 = '" & bh & "'")
If dr Is Nothing Then '如果不存在同考号的行
dr = DataTables("成绩").AddNew()
End If
For m As Integer = 0 To nms.Length - 1
dr(nms(m)) = Sheet(n,m).Value
Next
Next
Tables("成绩").ResumeRedraw()
End If
想法:以考号为关键例,表中已存在则修改其他例为EXCL中最新值,如完全相同则跳过,如新增有行则新增(要实现EXCL修改后完履盖合并进去)
请问上面代码测试当考号不改,而改姓名时还是要新增加一行呢,而不是按同考号覆盖呢,请指导,谢谢