Xlsx files
This one is for connecting to Excel 2007 files with the Xlsx file extension. That is the Office Open XML format with macros disabled
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx; Extended Properties="Excel 12.0 Xml;HDR=YES";
"HDR=Yes;" indicates that the first row contains columnnames, not data. "HDR=No;" indicates the opposite.
Treating data as text
Use this one when you want to treat all data in the file as text, overriding Excels column type "General" to guess what type of data is in the column
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx;
Extended Properties="Excel 12.0 Xml;HDR=YES;IMEX=1";
If you want to read the column headers into the result set (using HDR=NO even though there is a header) and the column data is numeric, use IMEX=1 to avoid crash.
To always use IMEX=1 is a safer way to retrieve data for mixed data columns. Consider the scenario that one Excel file might work fine cause that file's data causes the driver to guess one data type while another file, containing other data, causes the driver to guess another data type. This can cause your app to crash.
Xlsb files
This one is for connecting to Excel 2007 files with the Xlsb file extension. That is the Office Open XML format saved in a binary format. I e the structure is similar but it's not saved in a text readable format as the Xlsx files and can improve performance if the file contains a lot of data.
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myBinaryExcel2007file.xlsb;
Extended Properties="Excel 12.0;HDR=YES";
You can also use this connection string to connect to older 97-2003 Excel workbooks. "HDR=Yes;" indicates that the first row contains columnnames, not data. "HDR=No;" indicates the opposite.
Xlsm files
This one is for connecting to Excel 2007 files with the Xlsm file extension. That is the Office Open XML format with macros enabled.
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsm;
Extended Properties="Excel 12.0 Macro;HDR=YES";
Important note!
The quota " in the string needs to be escaped using your language specific escape syntax.
c#, c++ \"
VB6, VBScript ""
xml (web.config etc) " or maybe use a single quota '.
"HDR=Yes;" indicates that the first row contains columnnames, not data. "HDR=No;" indicates the opposite.
Contoh Code dalam Penggunaanya:
Public Conn As New ADODB.Connection
Public rsIdentitas As New ADODB.Recordset
Sub BukaExcelIuran()
'Variabel Path/direktori koneksi file Excel
Dim strAlamat As String
Dim strKonek As String
strAlamat = txtTextFile(0).Text
strKonek = "Provider=Microsoft.jet.OLEDB.4.0;"
strKonek = strKonek & "data source=" & strAlamat & ";"
strKonek = strKonek & "Extended Properties='Excel 8.0;HDR=Yes;IMEX=0';"
'koneksi ke file database/excel
Conn.CursorLocation = adUseClient
Conn.Open strKonek
'buka tabel/sheet/recodset
Dim strKueri As String
strKueri = "Select * from [Sheet1$]"
rsIdentitas.Open strKueri, Conn, adOpenKeyset, adLockOptimistic
End Sub
Public rsIdentitas As New ADODB.Recordset
Sub BukaExcelIuran()
'Variabel Path/direktori koneksi file Excel
Dim strAlamat As String
Dim strKonek As String
strAlamat = txtTextFile(0).Text
strKonek = "Provider=Microsoft.jet.OLEDB.4.0;"
strKonek = strKonek & "data source=" & strAlamat & ";"
strKonek = strKonek & "Extended Properties='Excel 8.0;HDR=Yes;IMEX=0';"
'koneksi ke file database/excel
Conn.CursorLocation = adUseClient
Conn.Open strKonek
'buka tabel/sheet/recodset
Dim strKueri As String
strKueri = "Select * from [Sheet1$]"
rsIdentitas.Open strKueri, Conn, adOpenKeyset, adLockOptimistic
End Sub
Post a Comment
Silahkan dishare dan tinggalkan komentar untuk kemajuan blog ini.
Terima kasih atas komentarnya brada.....!