|
1. 다이알로그 박스에 엑셀 형식을 표시하고 싶으면 SaveDialog1->Execute() 실행전에 아래를 추가해 주세요.
SaveDialog1->Filter = "Excel data file (*.xls)|*.xls";
SaveDialog1->FileName = "*.xls";
2. 엑셀의 D5 셀에 set_item()을 사용해 데이터를 쓰려면. 셀의 위치를
(TVariant)5,(TVariant)"D" 가 아니라
=> (TVariant)4,(TVariant)5 을 사용하세요. (4번째 column, 5번째 row)
즉, ExcelWorksheet1->Cells->set_Item((TVariant)4,(TVariant)5,(TVariant)Form1->EditFpmax1->Text);
입니다.
아자 님이 쓰신 글 :
: 첫번째 질문 저장 버튼을 눌렀을때 첨부한 파일과 같이 뜹니다.
: 그런데 파일형식에 엑셀이라고 표현해주고 싶은데 그부분을 어떻게 해야할지 모르겠습니다.
: 밑에 소스처럼 했는데 실행파일을 끄고 나면
: "book4의 변경된 내용을 저장하시겠습니까? "라는 메세지가 뜹니다.
: 이런 부분을 해결하기 위해서 if (SaveDialog1->Execute())
: 이 조건을 썻는데 이게 잘못 쓴건지 궁금합니다.
:
: 두번째 질문은
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"D",(TVariant)Form1->EditFpmax1->Text);
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"E",(TVariant)Form1->EditFtmax1->Text);
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"F",(TVariant)Form1->EditState->Text);
:
: 이것처럼 데이터를 엑셀파일 시트 5에 d , e, f 에 데이터를 입력하는데
: 한번만 입력하고 맙니다.
: 이 데이터를 실시간으로 입력하고 싶습니다.
:
: 답변 부탁드리겠습니다.
:
: ===============================================================================
: TVariant strTitle;
:
: ExcelApplication1->Connect();
: ExcelApplication1->set_Visible(0, false); // true 화면에 보임, 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)"VERSION : ") ; //버젼
: ExcelWorksheet1->Cells->set_Item((TVariant)1,(TVariant)"B",(TVariant) Form1->StatusBar1->Panels->Items[1]->Text) ; //버젼
:
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"A",(TVariant)"일련 번호 : ") ; //시리얼 넘버
: ExcelWorksheet1->Cells->set_Item((TVariant)2,(TVariant)"B",(TVariant)Form1->EditSerial1->Text) ; //시리얼 넘버
:
: ExcelWorksheet1->Cells->set_Item((TVariant)3,(TVariant)"A",(TVariant)"DATE : ") ; //날짜
: ExcelWorksheet1->Cells->set_Item((TVariant)3,(TVariant)"B",(TVariant)Form1->EditYear->Text) ; //year
: ExcelWorksheet1->Cells->set_Item((TVariant)3,(TVariant)"C",(TVariant)Form1->EditMonth->Text) ; //month
: ExcelWorksheet1->Cells->set_Item((TVariant)3,(TVariant)"D",(TVariant)Form1->EditDate->Text) ; //date
:
: ExcelWorksheet1->Cells->set_Item((TVariant)4,(TVariant)"A",(TVariant)"TIME P[mbar] T[C] STATE") ; //
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"A",(TVariant)Form1->EditHour->Text); //TIME
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"B",(TVariant)Form1->EditMinute->Text); //TIME
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"C",(TVariant)Form1->EditSecond->Text); //TIME
:
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"D",(TVariant)Form1->EditFpmax1->Text); //압력
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"E",(TVariant)Form1->EditFtmax1->Text); // 온도
: ExcelWorksheet1->Cells->set_Item((TVariant)5,(TVariant)"F",(TVariant)Form1->EditState->Text); // STATE
:
:
: ExcelWorksheet1->Activate();
:
:
: if (SaveDialog1->Execute())
: {
: ExcelWorksheet1->SaveAs((WideString)(SaveDialog1->FileName));
: }
: //Excel 프로그램 종료
: ExcelApplication1->Disconnect();
: ExcelWorksheet1->Disconnect();
: ExcelWorkbook1->Disconnect();
: ==============================================================================
|