C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[47190] [질문]엑셀파일을 불러올때 넘 느려요 더 빠르게 가져올 수 없나요
암흑사제 [] 2590 읽음    2006-11-24 10:29
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
    OpenDialog1->Execute();
    fnOpenExcel(OpenDialog1->FileName);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::fnOpenExcel(AnsiString szOpenFileName)
{
    Variant xlApp, xlBooks;
    xlApp = Variant::CreateObject("Excel.Application");
    xlBooks = xlApp.OlePropertyGet("Workbooks");
    //WideString aString = "c:\\test.xls";

    xlBooks.OleProcedure("Open", szOpenFileName.c_str());
    Variant xlBook = xlBooks.OlePropertyGet("Item", 1);
    Variant xlSheets = xlBook.OlePropertyGet("Worksheets");
    Variant xlSheet = xlSheets.OlePropertyGet("Item", 1);    // 1번 Sheet 가져오기

    Variant VCell;
    AnsiString val1,val3;
    int row_cnt = xlSheet.OlePropertyGet("UsedRange").OlePropertyGet("Rows").OlePropertyGet("Count"); //row갯수
    int col_cnt = xlSheet.OlePropertyGet("UsedRange").OlePropertyGet("Columns").OlePropertyGet("Count"); //col갯수
   
     sgGrid->ColCount = col_cnt;
     sgGrid->RowCount = row_cnt;

     try
     {


     for(int row = 0; row < row_cnt; row++)
     {
        for(int col = 0;col < col_cnt; col++)
        {
            VCell = xlSheet.OlePropertyGet("Cells", row + 1, col + 1);
            val1 = VCell.OlePropertyGet("Value");
            sgGrid->Cells[col][row] = val1;


        }

     }
    xlBooks.OleProcedure("Close");
    xlApp.OleProcedure("Quit");
    }
    catch(...)
    {
    xlBooks.OleProcedure("Close");
    xlApp.OleProcedure("Quit");
    }

}


엑셀파일에 있는 내용이 행이 2500줄 정도 되는데
가지고 오는데 1시간 넘게 걸려요 ㅠ,.ㅠ
좀 알려주세요

+ -

관련 글 리스트
47190 [질문]엑셀파일을 불러올때 넘 느려요 더 빠르게 가져올 수 없나요 암흑사제 2590 2006/11/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.