나는이 열 이름을 엑셀 파일에 다음 항목이 있습니다 (name
) :Excel 파일의 열에서 문자열을 검색하는 방법
- 비핀
- 비핀
- 비핀 을
- 비핀
내 문자열어디가 name
열에서 항목을 계산하려면 210. OLEDB 데이터 공급자 사용
나는이 열 이름을 엑셀 파일에 다음 항목이 있습니다 (name
) :Excel 파일의 열에서 문자열을 검색하는 방법
내 문자열어디가 name
열에서 항목을 계산하려면 210. OLEDB 데이터 공급자 사용
엑셀 시트를 DataTable에 가져오고 있습니까?
OleDbDataAdapter cmd = new System.Data.OleDb.OleDbDataAdapter(
"select * from [" + worksheetName + "$]", con);
con.Open();
System.Data.DataSet excelDataSet = new DataSet();
cmd.Fill(excelDataSet);
con.Close();
그렇다면 일반처럼 DataRow를 반복하면됩니다.
foreach(DataRow dataRow in excelDataSet.Tables[0].Rows){
if(dataRow["columnName"].ToString().Equals("vipin")){
count++;
}
}
"foreach (ds.Tables [0] .Rows())에서 var dataRow"코드를 실행할 때 오류가 표시됩니다. (system.data.datatble.rows는 메소드처럼 사용할 수 없다.) –
@vipinkatiyar :'foreach (ds.Tables [0] .Rows)의 var dataRow ' – Otiel
@Otiel 나는 이미 그랬지만 다음은 끝냈다. 오류는 dataRow [ "Name"]입니다. 인덱싱을 적용 할 수 없다고 말합니다. –
실제로 나는 특정 문자열을 Excel에서 검색하는 방법을 모릅니다. String strConn = "Provider = Microsoft.jet.OLEDB.4.0;" OleDbDataAdapter da = 새 OleDbDataAdapter ("SELECT count (*) FROM [Sheet1 $]") "+"데이터 원본 = "d : \ vipin.xls"+ 확장 속성 = Excel 8.0; where name = "vipin", strConn); –
카운트 부분을 꺼내서 DataSet (ds)로 작업합니다. – Kenoyer130