执行到红色字的那句代码就出错,服务器出现意外情况。(异常来自 HRESULT:0x80010105(RPC_E_SERVERFAULT))
在最初设计时还没有问题呢,不知道何故就出理了!我在论坛里搜过,好几个类似的,都没有一个正确的答案,我总觉得和office 的安装没有关系吧?
If DataTables.Contains("ffb") = True Or _tablename <>"" Then '如果存在统计表1
MessageBox.Show("系统中存在数据,请直接查看数据或重启本软件后再进行导入工作! ")
Return
End If
Dim xlsname As String
'选择性导入xls
Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
If dlg.FileName="" Then
Return
End If
MessageBox.show("1")
Dim App As New MSExcel.Application
MessageBox.show("2")
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(dlg.FileName) '只要执行这段就出错
MessageBox.show("3")
If Wb.WorkSheets.Count <> 1 Then
MessageBox.show("所导入的Excel文件中数据表大于1个,请保留需要导入的,删除多余的数据表!")
Return
End If
For Each Ws As MSExcel.WorkSheet In Wb.WorkSheets
MessageBox.Show("所导入Excel文件 " & dlg.FileName & " 中的数据表名为: " & Ws.Name)
xlsname=ws.name
Next
App.Quit
Dim ip As New Importer
ip.SourcePath = dlg.FileName '指定数据文件
ip.SourceTableName = xlsname & "$" '指定要导入的表
ip.NewTableName ="ffb" '导入后的表名
_tablename="ffb"
ip.Format = "Excel" '指定导入格式
ip.Import()
MessageBox.show("数据导入需要保存,请耐心等待!","提示")
DataTables(_tablename).Save
MessageBox.show("数据保存成功,可进行下一步!","提示")
End If