티스토리 뷰



ASP 엑셀(excel) 파일을 읽어 DB에 INSERT 할 때 처리방식 소스입니다


아래 소스는 엑셀파일이 C:\temp에 존재할 경우 예제이나


보통의 경우는 서버에 업로드 한 상태에서 엑셀을 참조하는 방식으로 진행되니까


1. ABCUpload 난 DextUpload를 이용해 해당 파일을 서버에 업로드 후


2. 아래의 경로 xlsFile 의 경로를 알맞게 변경 후


3. Do Until Rs.Eof 와    


   Rs.MoveNext

   Loop 

   사이 또는


   For Each oTable in oADOX.Tables


   Next 사이


   영역에 DB에 INSERT 하거나 UPDATE 또는 DELETE 하는 구문 삽입하여 사용하시면 됩니다





1) Sheet 가 단일(하나)인 경우 처리 방식 


xlsFile = "C:\temp\zipcode.xls"

Set objXlsConn = Server.CreateObject("ADODB.connection")



- 확장자가 xls 의 경우

xlsConnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & xlsFile & "; Extended Properties=Excel 8.0;" 


'- 확장자가 xlsx의 경우

xlsConnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & xlsFile & "; Extended Properties=Excel 12.0;"




objXlsConn.Open xlsConnString  

Sql = "Select  * From [Sheet1$]"

Set Rs = objXlsConn.Execute(Sql)

Do Until Rs.Eof

   Response.Write Rs(0) & "<br>"

   Rs.MoveNext

Loop 

Rs.close

Set Rs=nothing

objXlsConn.close

Set objXlsConn=nothing






2) sheet 다중(여러개)일 경우 처리 방식

  (위와 같이 [Sheet1$]로 처리할 수 없으므로 시트명을 추출시 아래와 사용)


Set oADOX = CreateObject("ADOX.Catalog")

oADOX.ActiveConnection = xlsConnString

For Each oTable in oADOX.Tables

 Response.Write oTable.Name & "<br>"

Next 





도움이 되셨다면 공감이나 한번 클릭해 주시는 센스~

반응형
댓글
반응형
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday