我正在开发我的应用程序。在vb.net中,源代码如下,但我遇到的问题是数据在DataGridView中没有完全显示。
Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button1.Click Dim conn As OleDb.OleDbConnection Dim dta作为OleDb.OleDbDataAdapter Dim dts As DataSet Dim excelpath As String
Dim ExcelQuery As String = "Select * From [IOT_NOVA$B12:S257]"
Try
If TextBox1.Text = "" Then
MsgBox("Please select Excel file to upload!", vbExclamation)
Exit Sub
End If
excelpath = TextBox1.Text
conn = New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelpath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1';")
dta = New OleDb.OleDbDataAdapter(ExcelQuery, conn)
DtSet = New DataTable
dta.Fill(DtSet)
DataGridView1.DataSource = DtSet
conn.Close()
conn.Dispose()
Catch ex As Exception
MsgBox(ex.Message, vbCritical)
End Try
End Sub
如果遗漏某些来源,请验证我的来源吗?
谢谢。 爱.Net
答案 0 :(得分:0)
您需要在设置DataGridview的DataSource时设置表名。
DataGridView1.DataSource = DtSet.Tables(0)
或
DataGridView1.DataSource = DtSet.Tables("IOT_NOVA")
答案 1 :(得分:0)
默认列框大小可能有问题。 看到这个问题: How to set max length of datagridview column 编辑:发现另一个问题-Excel数据驱动程序有问题。 在此线程中往下看: How do I create an Excel (.XLS and .XLSX) file in C# without installing Microsoft Office?