Foxtable(狐表)用户栏目专家坐堂 → 导入数据速度问题求教?


  共有3091人关注过本帖树形打印复制链接

主题:导入数据速度问题求教?

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/22 15:06:00 [显示全部帖子]

试试

 

SystemReady = False 

 

Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls"
dlg.MultiSelect = True '允许选择多个文件
If dlg.ShowDialog =DialogResult.OK Then
    For Each fl As String In dlg.FileNames
        Dim Book As New XLS.Book(fl)
        Dim mg As New Merger
        mg.SourcePath = fl
        mg.Format = "Excel"
        mg.SourceTableName = Book.Sheets(0).Name & "$"
        Select e.Form.Controls("TabControl1").SelectedPage.Text
            Case "报名登记表"
                mg.DataTableName = "报名登记表"
                mg.Merge()
            Case "审核合格表"
                mg.DataTableName = "审核合格表"
                mg.Merge()
               
        End Select
    Next
End If

 

SystemReady = True


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/22 15:39:00 [显示全部帖子]

 看3楼、6楼,同时,判断条件,可以是多列判断的啊。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/22 21:23:00 [显示全部帖子]

Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls"
dlg.MultiSelect = True '允许选择多个文件
Tables("证书编号表").StopRedraw()
Dim nms() As String = {"工作单位","县公司","姓名","性别","身份证号码","文化程度","鉴定等级","申报鉴定工种","鉴定批次","申报性质","理论成绩","潜能成绩","实操成绩","工作业绩","总评成绩","评审结果","证书编号","备注"}
If dlg.ShowDialog =DialogResult.OK Then
    For Each fl As String In dlg.FileNames
        Dim Book As New XLS.Book(fl)
        Dim sheet As XLS.Sheet = book.Sheets(0)
        For n As Integer = 1 To Sheet.Rows.Count -1
            Dim sfzhm As String = sheet(n,4).Text
            Dim jddj As String = sheet(n,6).Text
            Dim jdpc As String = sheet(n,8).Text
            Dim dr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & sfzhm & "' And 鉴定等级= '" & jddj & "' And 鉴定批次= '" & jdpc & "'")
            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
    Next
End If
Tables("证书编号表").ResumeRedraw()

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/22 21:42:00 [显示全部帖子]

Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls"
dlg.MultiSelect = True '允许选择多个文件
Tables("证书编号表").StopRedraw()
Dim nms() As String = {"工作单位","县公司","姓名","性别","身份证号码","文化程度","鉴定等级","申报鉴定工种","鉴定批次","申报性质","理论成绩","潜能成绩","实操成绩","工作业绩","总评成绩","评审结果","证书编号","备注"}
If dlg.ShowDialog =DialogResult.OK Then
    For Each fl As String In dlg.FileNames
        Dim Book As New XLS.Book(fl)
        Dim sheet As XLS.Sheet = book.Sheets(0)
        For n As Integer = 1 To Sheet.Rows.Count -1
            Dim sfzhm As String = sheet(n,4).Text
            Dim jddj As String = sheet(n,6).Text
            Dim jdpc As String = sheet(n,8).Text
            Dim dr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & sfzhm & "' And 鉴定等级= '" & jddj & "' And 鉴定批次= '" & jdpc & "'")
            If dr Is Nothing Then '如果不存在同编号的订单
                dr =  DataTables("证书编号表").AddNew()
            End If
            For m As Integer = 0 To nms.Length - 1
                If DataTables("证书编号表").DataCols(nms(m)).IsNumeric Then
                    dr(nms(m)) = val(Sheet(n,m).Value)
                Else
                    dr(nms(m)) = Sheet(n,m).Value
                End If
            Next
        Next
    Next
End If
Tables("证书编号表").ResumeRedraw()

 回到顶部