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
[62470] Re:Re:Re:엑셀 저장에 관하여...
로즈마일런 [] 1488 읽음    2010-09-16 14:52
소병관 님이 쓰신 글 :
: 님께서 말씀해주신데로 Save로 고쳐봤는데요.
: 저는 에러 메세지에 알 수 없는 이름이라고 나오는데요 ^^;;
:
: 장성호 님이 쓰신 글 :
: : SaveAs는  우리말로 "다른이름으로 저장" 이잖아요?
: :
: : 엑셀에서도 SaveAs하고 같은 이름으로 저장하려면 문제가 되지 않나요?
: :
: : 덥어쓸까하고 확인창이 뜨던데...
: :
: : SaveAs하지 마시고  그냥 Save만 하시면 될듯 한데요
: : excel_books.OleProcedure("Save");
: :
: : 그럼..
: :
: :
: :
: :
: : 소병관 님이 쓰신 글 :
: : : 오늘도 질문을 올리네요^^;;
: : : 데이타를 새로운 엑셀파일을 형성해서 저장하려고 하는데요...
: : : 포럼에 있는 답변들을 가지고 프로그램을 작성했는데 에러가 나네요...
: : : 다른분께서 똑같은 경우를 질문하셨는데 답변이 없어서 제가 다시 질문을 올립니다.
: : : 고수님들께서 도와주시면 감사하겠습니다.
: : :
: : :         Variant excel_app;
: : :         Variant excel_book, excel_books;
: : :         Variant excel_sheet;
: : :         Variant cells;
: : :         Variant Data;
: : :         WideString ExcelData;
: : :         AnsiString asFileName;
: : :
: : :         if(SaveDialogProcess->Execute())
: : :         {
: : :                 excel_app = Variant::CreateObject("excel.application");
: : :                 excel_app.OlePropertySet("Visible", (Variant)false);
: : :
: : :                 excel_books = excel_app.OlePropertyGet("Workbooks");
: : :                 excel_book = excel_books.OleFunction("Add", 1);
: : :                 excel_sheet = excel_book.OlePropertyGet("ActiveSheet");
: : :
: : :                 // read Data
: : :                 for(int Col = 1; Col < iGridCol; Col++)
: : :                 {
: : :                         for(int Row = 1; Row < iGridRow; Row++)
: : :                         {
: : :                                 ExcelData = StringGrid->Cells[Col][Row];
: : :                                 cells = excel_sheet.OlePropertyGet("Cells",Col , Row); //Cell선택
: : :                                 cells.OlePropertySet("Value", WideString(ExcelData));
: : :                         }
: : :                 }
: : :
: : :                 excel_books.OleProcedure("SaveAs" ,SaveDialogProcess->FileName.c_str()); // <--이부분
: : :                 excel_books.OleFunction("Close", (Variant)False);
: : :                 excel_sheet = Unassigned;
: : :                 excel_book = Unassigned;
: : :                 excel_app.OleFunction("Quit");
: : :                 excel_app = Unassigned;
: : :         }

이렇게 하면 스트링 그리드의 cells[0][0] 부터 되질 않고 [1][1] 부터 엑셀로 저장 되더라구요
앞에 한줄씩이 짤려서 난감해요 ㅠㅠ

+ -

관련 글 리스트
59564 엑셀 저장에 관하여... 소병관 1428 2009/12/29
60502     Re:엑셀 저장에 관하여... 윤일섭 2197 2010/03/18
59565     Re:엑셀 저장에 관하여... 장성호 1636 2009/12/29
59567         Re:Re:엑셀 저장에 관하여... 소병관 2074 2009/12/29
62470             Re:Re:Re:엑셀 저장에 관하여... 로즈마일런 1488 2010/09/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.