在vb.net中创建应用程序以连接到Excel文件并对其进行编辑。向excel提出查询时出现奇怪的错误
目前试图修改Excel文件时,出现以下错误:
有了这个功能
Protected Friend Function obtenerHojaActual(ByVal columna As String, ByVal con As String) As String
Dim cmd As String
Dim WorkSheet As String = ""
Try
libro = app.Workbooks.Open(con)
For Each hoja As Microsoft.Office.Interop.Excel.Worksheet In libro.Worksheets
cmd = "SELECT [" & columna & "] FROM [" & hoja.Name & "$]"
Dim adapter As New OleDbDataAdapter(cmd, conexion)
Dim tabla As New DataTable
adapter.Fill(tabla)
adapter.Dispose()
//Code
//Code
//Code
tabla.Dispose()
Next
libro.Close()
app.Quit()
Return WorkSheet
Catch ex As Exception
repairmanMessage("Error inesperado", ex.Message, My.Resources._error).ShowDialog()
principal.lbldireccion.ForeColor = Color.Red
Return WorkSheet
End Try
End Function
得到这个:
“没有指定的值对于一些所需的参数“
而与此:
Protected Friend Function obtenerErrores(ByVal columna As String, ByVal hoja As String, ByVal tipo As String) As Integer
Dim cmd As String = "SELECT [" & columna & "] FROM [" & hoja & "$]"
Dim errores As Integer = 0
Dim fecha As Date
Dim tabla As New DataTable
Try
Dim adapter As New OleDbDataAdapter(cmd, conexion)
adapter.Fill(tabla)
adapter.Dispose()
//Code
//Code
//Code
tabla.Dispose()
Return errores
Catch ex As Exception
repairmanMessage("Error inesperado", ex.Message, My.Resources._error).ShowDialog()
principal.lbldireccion.ForeColor = Color.Red
Return errores
End Try
得到这个错误...
我尝试使用参数化查询,但看起来像Excel中不要工作得很好用那个东西(也许,我不知道用于Excel的查询的语法)。
最奇怪的是,在代码的其他部分,不要给我错误,程序只是在我试图修改文件时抛出错误,尽管我得到这两个错误,但excel表单被修改就像我想要的那样。
什么可以是?
你在你的'Exception'对象有一个'InnerException'?那些通常会告诉你什么参数丢失。 –
不...让我添加它,看看 – TwoDent
我插入了你告诉我的内容,并打印出一个空白的msgbox ... – TwoDent