SCIP.be
Foto's/Reizen
Artikelen
Kleinkunst
Componenten
Applicaties

Component: TscExcelExport

Versie 4.21 (december 2012) - freeware voor niet-commercieel gebruik - Delphi VCL

Het TscExcelExport component is een zeer uitgebreid, krachtig maar eenvoudig te gebruiken component om alle records van een dataset vanuit Borland/Codegear/Embarcadero Delphi te exporteren naar Microsoft Excel. Bovendien zijn er vele mogelijkheden voorzien voor het wijzigen van de layout, het gebruik van conditionele formatering, het toevoegen van totalen, het maken van groepen, het aanzetten van filters, ... Het component werkt in Delphi 5, 6, 7, 2006, 2007, 2009, 2010, XE, XE2 en XE3 (32 en 64 bit) en het ondersteunt Excel 97, 2000, XP, 2003, 2007, 2010 en 2013.

TscExcelExport component (Delphi VCL)

TscExcelExport component (Delphi VCL)

Mogelijkheden

Properties

Allerlei instellingen om de layout van het werkblad te bepalen, zijn voorzien.
  • Naam van werkblad en bestand
  • Teksten voor hoofding en voettekst
  • Begin rij en kolom van hoofding, voettekst, titels en data
  • Kolombreedte instellen of automatisch laten aanpassen
  • Lettertype van hoofding, voettekst, titels, samenvatting en data (Alignment, WrapText, Orientation, CellMerge)
  • Achtergrondkleur en rand van hoofding, voettekst, titels, samenvatting en data
  • Berekeningen (SOM, MIN, MAX, AVG, COUNT) voor numerieke of opgegeven velden
  • AutoFilter voor titels
  • Groeperen met opgegeven velden
  • Nieuwe werkbladen aanmaken of bestaande bestanden aanvullen
  • Toegang tot de Excel objecten (ExcelApplication, ExcelWorkbook, ExcelWorksheet, ...)
  • ...

Events

  • Voor het bepalen van achtergrondkleur en font kleur, naam en grootte per cel
  • Voor het exporteren van data zonder gebruik te maken van een TDataset

Methods

  • Exporteren naar Excel
  • Opslaan van werkblad als XLSX (Open XML), XLS, HTML, XML of CSV
  • Afdrukvoorbeeld tonen

Component editor

  • Via de component editor kan je op een eenvoudige manier verschillende instellingen wijzigen

Live templates

  • Live templates voor Delphi 2006, 2007, 2009, 2010, XE, XE2 en XE3 (ExcelExportUse en ExcelExportCreate)

 

Info

Type library / COM

Delphi / Office

Demo applicatie

Installatie

Technische info

 

Schermvoorbeelden

 

Delphi voorbeelden

Voorbeeld 1 : meest eenvoudige manier om dataset naar Excel te exporteren

scExcelExport1.Dataset:=Table1;
scExcelExport1.ExportDataset;
scExcelExport1.Disconnect;

Voorbeeld 2 : layout properties gebruiken, totalen toevoegen en opslaan

scExcelExport1.WorksheetName := 'MijnDataset';
scExcelExport1.Dataset:=Table1;
scExcelExport1.StyleColumnWidth:=cwOwnerWidth;
scExcelExport1.ColumnWidth := 20;
scExcelExport1.HeaderText.Text := 'Hoofding';
scExcelExport1.MergeHeaderCells := True;
scExcelExport1.BeginRowHeader := 2;

scExcelExport1.FontTitles := LabelTitle.Font;
scExcelExport1.FontTitles.Orientation := 45;
scExcelExport1.BorderTitles.BackColor := clYellow;
scExcelExport1.BorderTitles.BorderColor := clRed;
scExcelExport1.BorderTitles.LineStyle := blLine;
scExcelExport1.BeginRowTitles := 5;
scExcelExport1.FontData := LabelData.Font;

scExcelExport1.SummarySelection := ssValues;
scExcelExport1.SummaryCalculation := scMAX;

scExcelExport1.AutoFilter := True;
scExcelExport1.ExcelVisible:=False;
try
  scExcelExport1.ExportDataset;
  scExcelExport1.ExcelWorkSheet.Range['A1','A10'].Value := 'Delphi';
  // Excel 2007 Open XML format (bestands extensie XLSX)
  if scExcelExport1.ExcelVersion = 12 then
    scExcelExport1.SaveAs(ExtractFilePath(Application.ExeName)+'ExcelExport2007.xlsx',ffXLSX);
  // Excel 2000/XP/2003 format (bestands extensie XLS)
  scExcelExport1.SaveAs(ExtractFilePath(Application.ExeName)+'ExcelExport2003.xls',ffXLS);  
finally
  scExcelExport1.Disconnect;
end;

Voorbeeld 3 : data groeperen

try
  scExcelExport1.Dataset:=QuerySortShipVia;

  scExcelExport1.SummarySelection := ssValues;
  scExcelExport1.SummaryCalculation := scAVG;
  scExcelExport1.SummaryDisplayFormat := '###0.000';

  scExcelExport1.StyleColumnWidth := cwEnhAutoFit;

  scExcelExport1.GroupFields.Clear;
  scExcelExport1.GroupFields.Add('ShipVia');
  scExcelExport1.GroupFields.Add('Terms');

  scExcelExport1.ExportDataset;
finally
  scExcelExport1.Disconnect;
end;

Voorbeeld 4 : meerdere datasets exporteren

scExcelExport1.ExcelVisible:=True;
try
  scExcelExport1.Dataset:=Table1;
  scExcelExport1.WorksheetName:='1';
  scExcelExport1.ConnectTo := ctNewExcel;
  scExcelExport1.ExportDataset;
  scExcelExport1.Disconnect;
  scExcelExport1.Dataset:=Table2;
  scExcelExport1.WorksheetName:='2';
  scExcelExport1.ConnectTo := ctNewWorkbook;
  scExcelExport1.ExportDataset;
  scExcelExport1.Disconnect;
  scExcelExport1.Dataset:=Table3;
  scExcelExport1.WorksheetName:='3';
  scExcelExport1.ConnectTo := ctNewWorksheet;
  scExcelExport1.ExportDataset;
finally
  scExcelExport1.Disconnect;
end;

Voorbeeld 5 : achtergrondkleur en font stijl wijzigen in OnGetCellStyle event

procedure scExcelExportGetCellStyleEvent(Sender: TObject; Field: TField; 
  var ColorBackground : TColor; FontCell : TxlFont);
begin
  if Field.FieldName = 'CustNo' then
  begin
    if Field.Value > 2000 then
    begin
      FontCell.Color := clRed;
      FontCell.Name := 'Times New Roman';
      FontCell.Size := 14;
    end;
    if Field.Value > 3000 then
    begin
      FontCell.Color := clGreen;
      FontCell.Style := [fsBold];
    end;
  end;

  if Field.FieldName = 'EmpNo' then
  begin
    if Field.Dataset.FieldByName('CustNo').Value > 2000 then
      ColorBackground := clRed;
  end;

  if Field.DataSet.FieldByName('EmpNo').Value > 100 then
    ColorBackground := clYellow;
end;

Voorbeeld 6 : toegang tot de properties van het Excel Worksheet object

try
  scExcelExport1.Dataset:=Table1;
  scExcelExport1.Connect;
  scExcelExport1.ExcelWorkSheet.Range['A2','C8'].Borders.Color := clRed;

  scExcelExport1.ExportDataset;

  scExcelExport1.ExcelWorkSheet.Range['B2','B2'].Select;
scExcelExport1.ExcelApplication.ActiveWindow.FreezePanes := True; scExcelExport1.ExcelWorkSheet.Range['B5','E7'].Cells.Clear; scExcelExport1.ExcelWorkSheet.Range[Format('A%d',[scExcelExport1.EndRowData+3]), Format('A%d',[scExcelExport1.EndRowData+3])].Value := 'Extra informatie toevoegen aan Excel werkblad'; scExcelExport1.ExcelWorkSheet.Range['M1','M1'].Value := 10; scExcelExport1.ExcelWorkSheet.Range['M2','A2'].Value := 5; scExcelExport1.ExcelWorkSheet.Range['M3','M3'].Value := '=M1+M2'; scExcelExport1.ExcelWorkSheet.Range['M3','M3'].Font.Color := clRed; scExcelExport1.ExcelWorkSheet.Range['M1','M20'].EntireColumn.Autofit; scExcelExport1.ExcelWorkSheet.Range['B2','B2'].AddComment('Dit is commentaar voor een cel'); finally scExcelExport1.Disconnect; end;

 

Copyrights en verspreiding

 

Registratie

Voordelen van registratie

Prijzen

 

Downloaden

TscExcelExport component
  • Inhoud: TscExcelExport component met sources en voorbeeld programma (voor Delphi 5, 6, 7, 2005, 2006, Turbo Delphi, 2007, 2009, 2010, XE, XE2 en XE3)
  • Versie: 4.21 (2012-12-28)
  • Auteur: Stefan Cruysberghs
Nu downloaden