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
[54200] Re:[질문] 현재 열려있는 엑셀파일(*.xls or *.csv)에 데이터 저장시 꼭 에러가 나네요
장성호 [nasilso] 2157 읽음    2008-08-04 10:57
현재 열려있는 엑셀파일에 데이타를 저장하는 것은...

기본적으로는  방법이 없습니다.

Excel 프로그램에서 파일을 혼자쓰겠다고 잡고 있으니까요
Notepad같은 Text 에디터의 경우 file을 읽어온후 close해버립니다.
그러니 open된 text파일에다가 덮어쓰는것이 가능하구요


굳이 한다면?
File을 Open해서 잡고있는 엑셀프로그램을 통해서 가능한 방법이 있을수도 있을듯 하네요
이미 파일을 Open해 잡고있는 엑셀프로그램의 내용 또한  바뀌어야 하죠


-----------------------------------------------------------------------------

그런데 님께서 하시고자 하시는것이..
Excel파일에다가 특정양식문서를 만들어 두고
거기다가 데이타를 집어 넣어 저장하려는것인가요?


저도 양식문서를 이용하는 무엇 좋은 방법이 있는지는 모르겠지만

원본   양식 Excel문서만들어 두고 
내용을 저장할때 원본을 복사해서 Temp파일을 만들고 그것을 Open하여 작업했습니다.
같은 프로그램이 두개 3개 떠도 문제 Temp파일만 늘어나고 문제 없었죠
그리고 Save할땐 항상 SaveAs로 ...


또하나...
   1. OLE로 새 WorkBook을 만듭니다.
   2. 원본 양식 엑셀 파일을 Open하여서 내용을 새 WorkBook에 그대로 복사합니다.
   3. 원본 양식 엑셀 파일을 close합니다.
   4. 새 WorkBook에 내용을 입력한후 Save합니다.

   ; 요건 해보진 않았는데... 잘될것 같네요


엑셀을 OLE로 제어하는 방법은 여기 검색하면 많이 나옵니다.

키워드는
CreateObject,Excel ,  OLE , Varient  , OlePropertyGet ,OlePropertySet  등으로 검색해보세요

그럼..


몰라서 님이 쓰신 글 :
: 현재 열려있는 엑셀파일(*.xls or *.csv)에 데이터 저장시 꼭 에러가 나네요... 파일이 열려있어서 그런것 같은데...
: 그런데 *.txt 파일은 열려있어도 데이터를 추가 저장해도 에러가 안나는데... 무슨 방법이 없나요.
:
: 그리고 외국서적이라도..
: 먼저 엑셀파일에 일정 포맷을 만들어 놓고 (보고서 형식 같은것)
: 엑셀파일에 데이터를 저장하는 다양한 방법이 설명된 책이 없나요...
: OLE 를 이용하는 방법 등등

+ -

관련 글 리스트
54170 [질문] 현재 열려있는 엑셀파일(*.xls or *.csv)에 데이터 저장시 꼭 에러가 나네요 몰라서 1695 2008/07/30
54200     Re:[질문] 현재 열려있는 엑셀파일(*.xls or *.csv)에 데이터 저장시 꼭 에러가 나네요 장성호 2157 2008/08/04
54201         Re:Re:[질문] 현재 열려있는 엑셀파일(*.xls or *.csv)에 데이터 저장시 꼭 에러가 나네요 몰라서 2304 2008/08/04
54208             Re:Re:Re:[질문] 현재 열려있는 엑셀파일(*.xls or *.csv)에 데이터 저장시 꼭 에러가 나네요 장성호 3066 2008/08/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.