2015-01-16 2 views
1

데이터 세트에서 Excel 파일을 작성하는 데 TSMExportToXls 구성 요소를 사용하고 있습니다. Excel 파일에 다른 시트를 작성하는 데 어려움을 겪고 있습니다. 그것은 단일 시트에 대한 파일을 작동합니다. 여러 장을 쓰는 법을 모르겠습니다. 다음은 제 코드입니다. 어떤 도움을 주시면 감사하겠습니다.TSMExportToXls를 사용하여 Excel에서 여러 시트를 작성하는 방법 Delphi 구성 요소

procedure TfrmXLSExport.btnExportClick(Sender: TObject); 
begin 
    SMExportToXLS1.Header.Add('New Sheet Data'); 
    SMExportToXLS1.Execute; 
end; 

나는 TTable 객체를 만들어 그 안에 데이터를 채워하고 다중 시트 통합 문서를 만들 수 TSMExportToExcel 구성 요소를 사용할 수 있습니다 SMExport에서 TSMExportToXls

+1

구성 요소에 설명서 나 샘플 코드가 포함되어 있습니까? –

+0

예, 설명서가 포함되어 있으며 샘플 코드가 있지만 언급 한 구성 요소를 사용하여 여러 시트가 포함 된 Excel 파일을 만드는 데 필요한 데모 코드를 찾지 못했습니다. 감사. –

+0

@ 하트웨어. 노력하지 만 TSMExportToXls 구성 요소 인 TMSExportToXls가 아닌 감사합니다. –

답변

0

의 DataSet 속성으로 설정했습니다. DEMOS \ Merge \ XLS 디렉토리에서 샘플 프로젝트를 확인할 수 있습니다.

+0

감사합니다 @ 마이크,하지만 Excel Ole을 사용하고 싶지 않습니다. TSMExportToExcel은 Excel Ole을 사용합니다. –

+0

TSMExportToXls에는 255 자 제한이 있습니까? Excel 셀에 255자를 초과하여 쓸 수 없다는 뜻입니까? ? –

0

대체 방법으로 TSMExportToXLSX 구성 요소를 사용하여 xlsx 파일을 생성 할 수 있습니다. 그러나 TSMExportToXLS는 병합 기능을 지원하지 않습니다.

0

는이 코드 (델파이) 사용

procedure TFormMain.ExportExec(aDataSet: TDataSet; aSheetName: string); 
var FirstTime : integer; 
begin 
    Inc(FirstTime); 
    //use this code to delete default worksheets but only the first time instead 
    //it will delete those newly created 
    if FirstTime = 1 then 
    XLS.DeleteDefaultSheets := True 
    else 
    XLS.DeleteDefaultSheets := False; 

    XLS.DataSet := aDataSet; 
    XLS.KeyGenerator := aSheetName; 
    XLS.Execute; 
end; 

을 그리고 나는 TSMExportToExcel 구성 요소를 살고 있고 어떻게입니다. enter image description here

희망이 도움이됩니다. : D

관련 문제