2009-11-20 12 views
1

이것은 ADO.net을 통해 Excel 2007 파일을 읽는 첫 번째 시도이며 쿼리를 실행하려고하면 b/c가 누락 될 것입니다. , 나는 예외를 얻는다. 내가보기 시작했을 때, 그것은 테이블 (워크 시트)이 없기 때문입니다. 누군가 내가 뭘 잘못하고 있는지 말해 줄 수 있습니까?ADO.net에서 Excel 파일 읽기 - 데이터 없음 (테이블)

 string cs = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=My File.xlsx;Extended Properties=""Excel 12.0;IMEX=1;"""; 

     using (OleDbConnection con = new OleDbConnection(cs)) 
     { 

      con.Open(); 

      string query = "SELECT * FROM [Sheet1$]"; 

      OleDbCommand cmd = new OleDbCommand(query, con); 

      OleDbDataAdapter adapter = new OleDbDataAdapter(cmd); 

      DataTable dt = new DataTable(); 

      DataTable worksheets = con.GetSchema("Tables"); 


      adapter.Fill(dt); 
      . 
      . 
      . 
     } 
+0

연결 문자열 확장 속성에 HDR이 없습니다. http://www.connectionstrings.com/excel-2007 – Fionnuala

답변

1

여기 허용 대답

The First Column of the excel file to put in string variable C#?

그것은 Excel 2003의 작동하지만 난이 쉽게 2007과 함께 작동하도록 할 수 있다고 생각에서보세요 : 여기

내 코드입니다

+0

실제로는별로 많지 않습니다. 내가 가진 것과 그 해결책 사이의 차이. 나는 그것이 효과가 있었는지보기 위해 바꿨다. 그리고 그것은 아직도하지 않는다. 문제는 어떤 이유로 워크 시트를 찾을 수 없다는 것입니다. – mjmcinto

+0

이것은 추측이지만 문제를 일으키는 연결 문자열에서 Excel 파일 이름의 공백입니까? – JayG

+0

파일 이름의 공백이 문제였습니다. 고마워요. 나는 그걸 확인 했어야했는데, 끝내 보았다. – mjmcinto

관련 문제