"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > OLEDB를 사용하여 원래 순서로 Excel 시트 이름을 검색하는 방법은 무엇입니까?

OLEDB를 사용하여 원래 순서로 Excel 시트 이름을 검색하는 방법은 무엇입니까?

2025-02-26에 게시되었습니다
검색:780

How to Retrieve Excel Sheet Names in Their Original Order Using OLEDB?

를 사용할 때 스프레드 시트에 정의 된 순서대로 어려울 수 있습니다. getoledbschematable ()는 원하는 순서로 시트 이름을 제공하지 못합니다. 이는 시트 이름 또는 색인을 기반으로 데이터 검색을 지정하는 사용자의 능력을 방해하여 혼란을 초래합니다.

시트 0에서 시트 수가 마이너스 1. 이렇게하면 시트 순서의 보존이 보장됩니다.

구현 OLEDB 사용

Office Interop 클래스를 사용하는 경우 OLEDB를 사용하는 솔루션을 사용할 수 없습니다 :

//

/// Excel 통합 문서에서 Excel 시트 이름을 검색합니다. /// /// Excel 파일. /// String [] 개인 문자열 [] getExcelSheetNames (String Excelfile) { OLEDBCONNECTION OBJCONN = NULL; system.data.datatable dt = null; 노력하다 { // 연결 문자열 문자열 connstring = "제공자 = microsoft.jet.oledb.4.0;" "data source ="excfilile "; 확장 속성 = Excel 8.0;"; // 연결 및 데이터베이스에 연결을 생성합니다 OBJCONN = 새로운 OLEDBCONNECTION (CONNSTRING); objconn.open (); // 스키마 가이드가 포함 된 데이터 테이블을 가져옵니다 dt = objconn.getoledbschematable (Oledbschemaguid.tables, null); if (dt == null) 널 리턴; // string을 초기화하여 시트 이름을 저장합니다. 문자열 [] 엑셀 시트 = 새 문자열 [dt.rows.count]; int i = 0; // 문자열 배열에 시트 이름을 추가합니다. foreach (dt.rows의 Datarow Row) { ExcelSheets [i] = row . toString (); 나 ; } 엑셀 시트를 반환합니다. } 캐치 (예외) { 널 리턴; } 마지막으로 { // 연결 및 데이터 테이블 정리 if (objconn! = null) { objconn.close (); objconn.dispose (); } if (dt! = null) { dt.dispose (); } } }

이 코드는 Excel 파일에 연결하고 시트 이름이 포함 된 데이터 테이블을 검색하고 스프레드 시트에 표시된 순서 대로이 이름으로 문자열을 채 웁니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3