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.

![]() |
MogelijkhedenPropertiesAllerlei instellingen om de layout van het werkblad te bepalen, zijn voorzien.
Events
Methods
Component editor
Live templates
|
Info
Type library / COM
- In dit ExcelExport component wordt er gebruik gemaakt van de Server componenten van de Borland/CodeGear/Embarcadero COM type libraries.
- Door middel van compiler directives (in unit scExcelExportConfig.inc) kan je de default type library overschrijven. De mogelijkheden zijn Excel97, Excel2000, ExcelXP en Excel2010.
- Microsoft Excel dient dan ook op de PC geïnstalleerd te zijn om met dit component te werken.
Delphi / Office
- Dit VCL component is getest in
- Borland Delphi 5 (SP1)
- Borland Delphi 6
- Borland Delphi 7
- Borland Delphi (BDS) 2005
- Borland Delphi (BDS) 2006
- CodeGear Turbo Delphi
- CodeGear Delphi 2007
- CodeGear Delphi 2009
- Embarcadero Delphi 2010
- Embarcadero Delphi XE
- Embarcadero Delphi XE2
- Embarcadero Delphi XE3
- Dit ExcelExport component werkt met
- Microsoft Excel 97
- Microsoft Excel 2000
- Microsoft Excel XP
- Microsoft Excel 2003
- Microsoft Excel 2007
- Microsoft Excel 2010
- Microsoft Excel 2013
- Het is getest in Nederlandstalige en enkele Engelstalige Office versies.
- Het geeft ook toegang tot de Excel Application, Workbook en Worksheet objecten waarmee u alle VBA properties en methods kan aanspreken.
Demo applicatie
- Een volledige demo applicatie met 18 voorbeelden wordt meegeleverd om alle mogelijkheden van het component te bekijken en te testen.
Installatie
- Open de run-time package ExcelExportPack5.dpk (voor Delphi5), ExcelExportPack6.dpk (voor Delphi6) ExcelExportPack7.dpk (voor Delphi7), ExcelExportPack9.dpk (voor Delphi 2005), ExcelExportPack10.dpk (voor Delphi 2006 en Turbo Delphi), ExcelExportPack11.dpk (voor Delphi 2007), ExcelExportPack12.dpk (voor Delphi 2009), ExcelExportPack14.dpk (voor Delphi 2010), ExcelExportPackXE.dpk (voor Delphi XE) ExcelExportPackXE2.dpk (for Delphi XE2) of ExcelExportPackXE3.dpk (for Delphi XE3). "Compile" deze package.
- Open de design-time package dclExcelExportPackx.dpk en "Compile" en "Install" het. Het TscExcelExport component verschijnt op het tabblad "SC" van het componenten palet.
- Als je het component wil toevoegen aan een reeds bestaande package, zorg er dan voor dat het overeenkomstige DCP bestand dclOffice, dat gevonden kan worden in de Delphi/Lib map, wordt toegevoegd als "required". Als je een nieuw design-time package wil aanmaken, moet je het DCP bestand designide.dcp (dsnide50.dcp in Delphi5) toevoegen.
Technische info
- Zie de hoofding van de unit unit scExcelExport.pas voor meer informatie over alle properties, methods, events, ...
Historiek van versies
Uitgebreide presentatie (slideshow) met informatie en voorbeelden in (in PDF formaat) (6,4 Mb)
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
- Alle copyrights van dit Delphi component zijn eigendom van de auteur Stefan Cruysberghs.
- Dit component is freeware voor niet-commercieel gebruik en mag vrij verspreid worden.
- Alle sources (met gedetailleerde commentaar) worden meegeleverd.
- De auteur geeft geen garantie op het foutloos werken van dit component.
- Geregistreerde gebruikers kunnen er wel op rekenen dat bugs zo spoedig mogelijk opgelost worden.
Registratie
- Als u dit component interessant vindt of het in een commerciële omgeving gebruikt, dient u dit component te registreren.
- Hiermee moedigt u de auteur aan om dit ExcelExport component verder te ontwikkelen en te verbeteren.
Voordelen van registratie
- Volledige source code voor Delphi versie 5 tot XE3.
- Ongelimiteerde licentie voor uitrollen (deployment)
- Bovendien ontvangt u een e-mail bij nieuwe versies of updates.
- Ondersteuning kan gevraagd worden via e-mail.
Prijzen
- De RegNet service wordt gebruikt voor de betalingsafhandelingen. U kan er eenvoudig en veilig online betalen met een kredietkaart.
- Licentie één ontwikkelaar (Single developer license) : $35 (ongeveer 27 euro)
- Licentie voor volledig bedrijf (site license, onbeperkt aantal developers, voor onbepaalde tijd geldig) : $130 (ongeveer 100 euro)
- Na registratie heeft u geen registratiesleutel nodig! Met de versie die u op deze pagina kan downloaden, beschikt u over alle functionaliteit.
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






