PC에 오피스가 설치되어있지 않은 경우 Access Database Engine을 MS 사이트에서 다운받아서 설치하면 ADO에서 엑셀파일을 사용할 수가 있습니다.
※ Microsoft Access Database Engine 2010 Download Link
. Microsoft Access Database Engine 2010 재배포 가능 패키지 Download
. Microsoft Access Database Engine 2010, 32비트 버전 서비스 팩 Download
. Microsoft Access Database Engine 2010, 64비트 버전 서비스 팩 Download
일반적으로 xls 파일을 사용하기 위해서는 ADO 컴퍼넌트의 ConnectionString에 아래와 같이 설정하죠.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source= <File Name>;Extended Properties="Excel 8.0;HDR=YES;"
Office 2010 기준으로 xlsx 파일을 ADO에서 사용하기위한 설정은 다음과 같습니다.
Provider=Microsoft.ACE.OLEDB.12.0;Data Source= <File Name>;Extended Properties="Excel 14.0;Imex=1;HDR=YES;"
위의 설정으로 엑셀을 불러올 때 정상적으로 되지않고 " 설치 가능한 ISAM이 없습니다."" 라는 오류가 나는 경우가 있습니다.
이 경우는 레지스트리에 엑셀 14.0에 관련된 정보가 없어서 그런데 아래와 같이 설정하면 정상적으로 xlsx 파일을 불러올 수 있습니다.
Provider=Microsoft.ACE.OLEDB.12.0;Data Source= <File Name>;Extended Properties="Excel 8.0;Imex=1;HDR=YES;"
물론 위의 설정으로 xls 파일도 불러올 수 있습니다.
※ 엑셀에 열 머리글이 포함되어 있으면 HDR=YES, 포함되어있지않으면 HDR=NO로 설정.
※ IMEX = 0: Export mode, 1: Import mode, 2: Linked mode (full update capabilities)
|