|
if(!this-SaveDialog->Execute())
{
// 실패시 하는 작업
}
AnsiString strFile ;
strFile = SaveDialog->FileName; // 이게 저장되는 파일 이름이겠죠...
if(FileExists(strFile )){
// 파일 존제 하면 어떻할껀지 처리..옵션 사항..
}
모 이런 식으로 알아서 응용 하셔서 스타일에 맞게 변경 하시면 되겠네요..
나머지야 개인 취향에 따라서 짜는 부분이구요..
저 전체를 저는 While 문으로 감싸서.. 사용자가 만족할때까지 계속 루프를 돌게 하는데..
다이렉트로 그냥 덮여 쒸울수 있게 하셔두 되고..그건 선택 사항이듯 하네요...
허접 님이 쓰신 글 :
: void __fastcall TFormMain::Button1Click(TObject *Sender)
: {
: SaveDialog1->Execute();
:
: WideString strTitle = "Data Save";
: WideString strFile = "C:\\test.xls";
: WideString FileName;
:
: ExcelApplication1->Connect();
: // true 화면에 보임, false 화면에 보이지 않음
: ExcelApplication1->set_Visible(0,false);
: ExcelApplication1->set_DisplayAlerts(TDefLCID(), false);
: ExcelWorkbook1->ConnectTo(ExcelApplication1->Workbooks->Add());
: //첫번째 워크시트와 연결
: ExcelWorksheet1->ConnectTo(ExcelApplication1->Worksheets->get_Item((TVariant)1));
: //워크시트의 이름
:
: ExcelWorksheet1->set_Name(strTitle);
:
: ExcelWorksheet1->Cells->set_Item((TVariant)1,(TVariant)"A",(TVariant)Edit20->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)1,(TVariant)"B",(TVariant)Edit30->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)1,(TVariant)"C",(TVariant)Edit40->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)1,(TVariant)"D",(TVariant)Edit50->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)1,(TVariant)"E",(TVariant)Edit60->Text) ;
:
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"A",(TVariant)Edit19->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"B",(TVariant)Edit29->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"C",(TVariant)Edit39->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"D",(TVariant)Edit49->Text) ;
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"E",(TVariant)Edit59->Text) ;
:
: ExcelWorksheet1->Activate();
: ExcelWorksheet1->SaveAs(strFile);
:
: ExcelApplication1->Disconnect();
: ExcelWorksheet1->Disconnect();
: ExcelWorkbook1->Disconnect();
:
: }
:
: 버튼을 클릭하면, 엑셀이 실행되지 않고, 엑셀의 각 cell에 Edit19->Text 이런 형식으로 값이 들어갑니다.
: 그리고 "C:\\test.xls"; 이렇게 저장이 됩니다.
: 제가 하고 싶은건, SaveDialog를 사용해서, 파일명도 제 맘대로, 저장 위치도 제 맘대로 하고 싶어요..
:
: SaveDialog->Execute();
:
: 이거밖에 모르겠어요..
: SaveDialog랑 위 소스를 어떻게 연결을 시켜야 할지, 너무 막막합니다..
: 시간은 없고.. ㅠ.ㅜ
: 도와주세요 제발~~
|