Tips and tricks for .NET using ASP and VB code.

Load an Excel Spreadsheet into a DataGridView

Public Class Form1
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim ExcelFile As String = "C:\Folder\SpreadSheet1.xls"
Dim ExcelConnection As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ExcelFile & ";Extended Properties=Excel 8.0;"
Dim DataSource As New System.Data.OleDb.OleDbConnection(ExcelConnection)
DataSource.Open()
Dim ExcelTables As New Data.DataTable
ExcelTables = DataSource.GetOleDbSchemaTable(OleDb.OleDbSchemaGuid.Tables, Nothing)
Dim FirstSheetName = ExcelTables.Rows(0)("TABLE_NAME")
Dim DataAdapter1 As New OleDb.OleDbDataAdapter("select * from [" & FirstSheetName & "]", ExcelConnection)
Dim DataTable1 As New Data.DataTable
DataAdapter1.Fill(DataTable1)
DataAdapter1.Dispose()
DataSource.Dispose()
Me.Size = New System.Drawing.Size(750, 570)
Dim DataGridView1 As New DataGridView
DataGridView1.Location = New System.Drawing.Point(25, 25)
DataGridView1.Size = New System.Drawing.Size(700, 500)
DataGridView1.Anchor = _
CType((((System.Windows.Forms.AnchorStyles.Top _
Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), _
System.Windows.Forms.AnchorStyles)
DataGridView1.Visible = True
Me.Controls.Add(DataGridView1)
DataGridView1.DataSource = DataTable1
DataGridView1.AutoResizeColumns()
Me.Show()
End Sub
End Class
Visual Studio uses the 32-bit version. You can change this from within Visual Studio by going to Tools » Options » Projects And Solutions » Web Projects » General, and choosing [Use the 64 bit version of IIS Express for web sites and projects]

No comments:

Post a Comment

Search This Blog