TscExcelExport
Versie 4.43
December 2023
Delphi
VCL
Het TscExcelExport component is een zeer uitgebreid, krachtig maar eenvoudig te gebruiken component om alle records van een dataset vanuit 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, XE3, XE4, XE5, XE6, XE7, XE8, 10 Seattle, 10.1 Berlin, 10.2 Tokyo, 10.3 Rio, 10.4 Sydney, 11 Alexandria en 12 Athens en het ondersteunt alle Excel versies van 97 tot 2019.
MogelijkhedenPropertiesAllerlei instellingen om de layout van het werkblad te bepalen, zijn voorzien.
Events
Methods
Component editor
Live templates
|
Info
Type library / OCX / COM
- In dit ExcelExport component wordt er gebruik gemaakt van de Office Server componenten van de Embarcadero COM type libraries om OLE automation met Excel mogelijk te maken.
- 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
- Embarcadero Delphi XE4
- Embarcadero Delphi XE5
- Embarcadero Delphi XE6
- Embarcadero Delphi XE7
- Embarcadero Delphi XE8
- Embarcadero Delphi 10 Seattle
- Embarcadero Delphi 10.1 Berlin
- Embarcadero Delphi 10.2 Tokyo
- Embarcadero Delphi 10.3 Rio & Community Edition
- Embarcadero Delphi 10.4 Sydney
- Embarcadero Delphi 11 Alexandria
-
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
- Microsoft Excel 2016
- Microsoft Excel 2019
- Microsoft Excel 365
- 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 uit te proberen.
- De project file en de source code kan je terugvinden in de Source demo folder. De executable DemoExcelExport.exe is ook aanwezig in deze folder.
Installatie
- Stap 1: Open de run-time package ExcelExportPack5.dpk (voor Delphi5), ExcelExportPack6.dpk (voor Delphi6) ExcelExportPack7.dpk (voor Delphi7), ExcelExportPack9.dpk (voor Delphi 2005), ExcelExportPack10.dproj (voor Delphi 2006 en Turbo Delphi), ExcelExportPack11.dproj (voor Delphi 2007), ExcelExportPack12.dproj (voor Delphi 2009), ExcelExportPack14.dproj (voor Delphi 2010), ExcelExportPackXE.dproj (voor Delphi XE) ExcelExportPackXE2.dproj (voor Delphi XE2), ..., ExcelExportPackXE10.dproj (voor Delphi XE10), ExcelExportPackD10.dproj (voor Delphi 10 Seattle), ExcelExportPackD101.dproj (voor Delphi 10.1 Berlin), ExcelExportPackD102.dproj (voor Delphi 10.2 Tokyo), ExcelExportPackD103.dproj (voor Delphi 10.3 Rio en Community Edition) en ExcelExportPackD104.dproj (voor Delphi 10.3 Sydney). Compileof Build deze package.
- Stap 2: Open de design-time package dclExcelExportPackx.dproj en Compile of Build het
- Stap 3: Install het. De optie Install is alleen beschikbaar in het contextmenu als je met de rechtermuisknop klikt
- 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 toevoegen.
Technische info
- Zie de hoofding van de unit unit scExcelExport.pas voor meer informatie over alle properties, methods, events, ...
- Documentatie, versie overzicht en voorbeelden Delphi TscExcelExport component (in PDF formaat) (3,6 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','M2'].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 open-source en kan gratis worden verspreid en gebruikt voor niet-commerciƫle doeleinden. In commerciƫle omgevingen is een licentie vereist!
- 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.
- Na registratie heeft u geen registratiesleutel nodig! Met de versie die u op deze pagina kan downloaden, beschikt u over alle functionaliteit.
Voordelen van registratie
- Volledige source code voor Delphi versie 5 tot XE8 en tot 11 Alexandria.
- Ongelimiteerde licentie voor uitrollen (deployment) in commerciële omgevingen.
- Levenslange licentie, dus als u eenmaal de licentiekosten betaald heeft, hoeft u niet nooit meer te betalen voor updates.
- Basis ondersteuning kan gevraagd worden via e-mail.
Licentie één ontwikkelaar (Single developer license)
- Prijs: 35 EURO
Koop licentie via PayPal
Licentie voor volledig bedrijf (Site license, onbeperkt aantal developers, onbeperkte tijd geldig)
- Prijs: 130 EURO
Koop licentie via PayPal
Ben je een tevreden thuisgebruiker van dit component en wil je de ontwikkeling verder steunen, dan kan je 2 euro doneren via PayPal. Alvast bedankt voor de steun!
Donatie van 2 euro PayPal
Downloaden
TscExcelExport component
- Inhoud: TscExcelExport component met sources, demo applicatie en documentatie
- Versie: 4.43 (2023-12-23)
- Grootte: 12.38 Mb
- Auteur: Stefan Cruysberghs