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
[23816] Re:제발좀 도와주세요 ㅠ.ㅠ DBGrid를 엑셀로... ㅠ.ㅠ
초짜 [chqh] 1414 읽음    2003-01-23 10:45
Happy 님이 쓰신 글 :
: 한 3일을 엑셀관련해서 계속 삽질만하고있네요... 정말 너무 어렵네요 ㅠ.ㅠ
:
: 얼마전 초짜님과 시간한줌님의 답변으로 노력은 해보고 있는데...
: 전혀 되지가 않는군요...
:
:
: 먼저 저의 경우를 설명드리겠습니다.
:
: A와 B라는 테이블이 있습니다.
: 즉 테이블 이름은 유동적입니다.
:
: 예를 들어 A 테이블에는...
:
: Table A
: -----------------------------------------
: No    Name   Addr                            -> 테이블 마다 유동적임
: ----------------------------------------
: 1    홍길동  부산
: 2    아무개  서울
: -----------------------------------------
:
: B라는 테이블은
: ----------------------------------------
: No   Tel        Hobby      Addr   Name
: ----------------------------------------
: 1   123-4567    영화감상   부산   홍길동
: 2   333-4433    음악감상   서울   아무개
: 3   .................................
: 4   .................................
:
: ----------------------------------------
:
: 이런식으로 필드이름이 다른 여러 테이블이 있습니다.
:
: 이것을 Memo1에 SQL문을 입력해서 조회해 오는겁니다
:
: 즉 Select * from A 가올수도 있고 Select * from B가 올수도 있는겁니다.
:
: 이런경우 그리드에 뿌려지는게 다릅니다.
:
: 이런 유동적인것을 CSV나 엑셀형식으로 보내고 싶은데...
: 여러 게시물을 아무리 검색해보고 질문해봐도 잘안되는군요...
:
: 어떻게 해결하는 방법없을까요??
: 그리드의 가로수와 세로수를 가져와서 해봤는데도 한줄이상 넘어가지가 않습니다ㅠ.ㅠ
:
:
:
: 일단 저의 소스를 올려보겠습니다
: 버튼을 클릭하면 유동적으로 그리드에 뿌려지는 것까지와 XML포멧으로 저장하는것 까지는 완료된 상태입니다.
:
:
: void __fastcall TForm2::ToolButton11Click(TObject *Sender)
: {
:       //쿼리한 결과를 그리드에 출력...
:       ADOQuery2->Close();
:       ADOQuery2->SQL->Clear();
:       ADOQuery2->SQL->Add(Memo1->Lines->Text);
:       ADOQuery2->Open();
:       ADOQuery2->Active=false;
:       ADOQuery2->Active=true;
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm2::XMLX1Click(TObject *Sender)
: {
:         // 그리드의 내용을 XML형식으로 저장...
:         if(SaveDialog2->Execute()) {
:             ADOQuery2->SaveToFile(SaveDialog2->FileName,pfXML);
:         }
:
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm2::Button1Click(TObject *Sender)
: {
:      // 그리드를 엑셀이나 CSV형태로 저장...
:      //////////////////////////////////////////////////////
:      // ???????????????????????????????????????????????
:
:
:
: }
: //---------------------------------------------------------------------------
:
: 버튼1을 클릭했을때 CSV나 엑셀형식으로 저장하고픈데....
: 여러 고수님들 해결좀 해주세요 ㅠ.ㅠ
:
: 빌더를 처음 접해서인지...
:
: 좀처럼 안되는군요.....
:
:
:
폼에다가 리스트 박스를 하나 만듭니다.

ADOConnection1->GetFieldNames("A", List1->Items);

이렇게 하면 테이블 A에 있는 필드들이 쭉 나열되겠죠?

그런 다음에 시간한줌님이 가르쳐주신대로 돌리기만 하면 됩니다.

그리드를 바로 엑셀로 바꾸는것은 제가 잘 모르는거고... 그냥 위에처럼 꽁수를 써서 돌리면 될꺼 같은데..

님에 소스에는 DBGrid에서 파일로 만들려고 하는 흔적조차 안보이네요..

우선 해보신 소스를 올리시는게 좋을꺼 같습니다.

참고사항: Xls파일은 txt파일 만드시면서 단어 중간중간에 Tab으로 자리를 띄우시면 엑셀 파일이 되는거구요..

Csv파일은 ,로 구분하시면 됩니다. 다 아시는거죠? ^^;;;

그럼 수고하시길..

+ -

관련 글 리스트
23812 제발좀 도와주세요 ㅠ.ㅠ DBGrid를 엑셀로... ㅠ.ㅠ Happy 844 2003/01/23
23822     Re:제발좀 도와주세요 ㅠ.ㅠ DBGrid를 엑셀로... ㅠ.ㅠ 류현 1137 2003/01/23
23816     Re:제발좀 도와주세요 ㅠ.ㅠ DBGrid를 엑셀로... ㅠ.ㅠ 초짜 1414 2003/01/23
23823         감사합니다~~ 덕분에 해결했습니다~~~ Happy 724 2003/01/23
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.