以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  合并excel表后,掉数据解决方法  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=66157)

--  作者:htlk25
--  发布时间:2015/3/31 11:51:00
--  合并excel表后,掉数据解决方法

用这种方法合并同列名的EXCEL表格数据,就不会出现掉数据的现象!

会自动找出excel表中对应的列合并到foxtable中!

 

Tables("展会信息.原始名单").Focus
MessageBox.Show("请核对Excel文件列名是否与\'原始名单\'工作表列名完全一致!","提示", MessageBoxButtons.Ok, MessageBoxIcon.Information)
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls|Word文件|*.doc|Access文件|*.mdb" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    Dim  Book As New XLS.Book(dlg.FileName)
    Dim  Sheet As XLS.Sheet = Book.Sheets(0)
   
    Tables("展会信息.原始名单").StopRedraw()
    \'注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim r As  Row = Tables("展会信息.原始名单").AddNew()
        For nb As Integer = 0 To sheet.Cols.Count -1
            If  Tables("展会信息.原始名单").Cols.Contains(sheet(0,nb).Value) Then
                r(sheet(0,nb).Value) = Sheet(n,nb).Value
            End If
        Next
    Next
    Tables("展会信息.原始名单").ResumeRedraw()
End If


--  作者:有点甜
--  发布时间:2015/3/31 11:52:00
--  
 现在你的问题是?
--  作者:Bin
--  发布时间:2015/3/31 11:52:00
--  
图片点击可在新窗口打开查看
--  作者:htlk25
--  发布时间:2015/3/31 14:11:00
--  
因为网上有人碰到这样的问题,我刚好也碰到,上面的代码可以把问题解决!