Yang ini sebenernya rada aneh, tetapi gpp deh buat jawab pertanyaan dari we.com/search?q=vbnet-memilih-file-excel-untuk dan
we.com/search?q=vbnet-menentukan-file-excel-untuk
Yaitu ihwal menggunakan ADODB Recordset di VB.NET dan dipakai untuk memperlihatkan data dari file Excel ke DataGridView.
Pertama2 Add Reference dahulu dengan cara mirip gambar di bawah:
UI yang kita pakai simple aja cuman Form dan DataGridView.
Code:
Imports ADODB
Imports System.Data.OleDb
Public Class frmADODB
Dim xConn As ADODB.Connection
Dim rsTable As ADODB.Recordset
Dim rsExcel As ADODB.Recordset
Dim strExcel As String
Private Sub Open_Excel()
xConn = New ADODB.Connection
With xConn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=d:\karyawan.xls;" & _
"Extended Properties=Excel 12.0;"
.Open()
End With
rsExcel = New ADODB.Recordset
strExcel = "SELECT * FROM [Sheet1$]"
With rsExcel
.CursorLocation = CursorLocationEnum.adUseClient
.Open(strExcel, xConn, CursorTypeEnum.adOpenKeyset, _
LockTypeEnum.adLockReadOnly)
.ActiveConnection = Nothing
End With
Me.DataGridView1.DataSource = RecordSetToDataTable(rsExcel)
rsExcel.Close()
xConn.Close()
End Sub
Public Function RecordSetToDataTable( _
ByVal objRS As ADODB.Recordset) As DataTable
Dim objDA As New OleDbDataAdapter()
Dim objDT As New DataTable()
objDA.Fill(objDT, objRS)
Return objDT
End Function
Private Sub frmADODB_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Open_Excel()
End Sub
End Class
Mari kita coba:
Catatan:
Waktu nyoba sempet error terus provider not found, ternyata provider nya harus pake yang buat Excel 2007 keatas yakni "Microsoft.ACE.OLEDB.12.0"
Click here if you like this article.
Sumber http://rani-irsan.blogspot.com
EmoticonEmoticon