Foxtable(狐表)用户栏目专家坐堂 → excel文件用代码merge导入时报超过内存,是数据太多了吗


  共有1523人关注过本帖平板打印复制链接

主题:excel文件用代码merge导入时报超过内存,是数据太多了吗

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


加好友 发短信
等级:四尾狐 帖子:896 积分:7535 威望:0 精华:0 注册:2017/12/27 14:19:00
excel文件用代码merge导入时报超过内存,是数据太多了吗  发帖心情 Post By:2023/12/20 9:59:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:22222.jpg
图片点击可在新窗口打开查看

有什么好的解决办法吗?
我测试的导入数据大概20万条。

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xlsx" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    mg.SourcePath = dlg.FileName
    mg.Format = "Excel2007" '指定格式
    Dim Book As New XLS.Book(dlg.FileName)
    
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    For n As Integer = 0 To Sheet.Cols.Count -1
        Names.add(Sheet(0,n).text)
    Next
    
    For Each r As String In v1
        If Names.Contains(r)= False   '   next 下面的代码也不执行      
            messagebox.show("excel表中不存在列名为【" & r & "】的列!")
          'Return "excel表中不存在列名为【" & r & "】的列!"   '命令窗口测试需要返回值,窗口事件中将不会弹出返回值.
          Return
        End If
    Next
    
    mg.SourceTableName =Book.Sheets(0).name & "$"
    mg.DataTableName = "更新短租实收开piao"
    mg.Merge()
End If

 回到顶部
总数 28 1 2 3 下一页