HotXLS Belgeleri

Gelişmiş Çalışma Kitabı İş Akışları

Bu rehber, bir çalışma kitabı iş akışı temel hücre okuma ve yazmanın ötesine geçtiğinde en çok işe yarayan üst düzey API'leri bir araya toplar

Baskıya hazır PDF çıktısı

Klasik XLS ve modern XLSX için çalışma kitabı, çalışma sayfası ve aralık düzeyindeki PDF aktarımları; biçimlendirilmiş değerleri, hücre dolgularını, yazı tipi rengini ve vurgusunu, hizalamayı, kenarlıkları, isteğe bağlı kılavuz çizgilerini, sütun genişliklerini, satır yüksekliklerini, elle eklenen sayfa sonlarını, tekrarlanan baskı başlıklarını ve üç parçalı üst ve alt bilgileri çizer

Sheet.PageSetup.PrintArea := 'A1:H80';
Sheet.PageSetup.PrintTitleRows := '$1:$3';
Sheet.PageSetup.RightHeader := 'Page &P of &N';
Sheet.HPageBreaks.Add(45);
Workbook.SaveAsPDF('report.pdf');

Modern çalışma kitapları aynı doğrudan giriş noktalarını TXLSXWorkbook, TXLSXWorksheet ve TXLSXRange üzerinden sunar

ModernSheet.PrintArea := '$A$1:$H$80';
ModernSheet.PrintTitleRows := '$1:$3';
ModernSheet.AddRowBreak(45);
ModernWorkbook.SaveAsPDF('modern-report.pdf');

WinAnsi dışındaki metinler, gömülü TrueType CID yazı tipi ve ToUnicode eşlemesiyle yazılır; böylece okuyucular Unicode metni çizebilir ve ayıklayabilir

Çalışma kitabının belirli bir betiği ya da kurumsal yazı tipini kullanması gerekiyorsa TXLSPDFExport.UnicodeFontFile değerini ayarlayın; aksi hâlde dışa aktarıcı, kurulu yazı tipleri arasından uygun olanı seçer

Önizleme, PDF ve özel çıktının aynı kağıt geometrisini, kenar boşluklarını, sığdırma ölçeğini, elle eklenen sonları, tekrarlanan başlıkları, sayfa sırasını, üst ve alt bilgileri ve çizim çıtalarını paylaşması gerekiyorsa TXLSPaginationModel kullanın

Pages := Exporter.CreatePaginationModel(Workbook);
try
  Pages.SavePageAsMetafile(0, 'FirstPage.emf');
finally
  Pages.Free;
end;

İlerleme, iptal ve tanılama

Begin, work ve end geri çağırmaları için OnProgressEx kullanın; bir işlemi iptal etmek için abort argümanını ayarlayın

Kaydetme, açma ya da yeniden hesaplama hatalarından sonra yalnızca sayısal dönüş değerine güvenmek yerine Diagnostics ya da LastDiagnostic içeriğine bakın

Desteklenmeyen OOXML paket parçaları

TXLSXWorkbook.PreserveUnsupportedParts varsayılan olarak true'dur ve bilinmeyen kök, çalışma kitabı, çalışma sayfası ya da çizim ilişkileri üzerinden erişilebilen özel parçaları saklı tutar

UnsupportedPartCount ve UnsupportedPartBytes saklanan içeriği raporlar; ClearUnsupportedParts ise kaydetmeden önce bu içeriği bilinçli olarak kaldırır

Zengin pano alışverişi

Hem Unicode tablo metnini hem de CF_HTML'i yayınlamak için aralık düzeyindeki CopyToClipboard çağırın; bu aktarım görüntüleme biçimlendirmesini, formülleri, birleştirilmiş hücreleri, köprüleri ve güvenle tırnaklanan gömülü ayırıcıları kapsar

VBA kaynak düzenleme

Bir VBA projesi yükledikten sonra mevcut modülün SourceCode içeriğini güncelleyin ve çalışma kitabını ya da bağımsız depolamayı kaydedin

Yazıcı, akış öneklerini ve dokunulmamış proje içeriğini korurken yalnızca düzenlenen kaynak akışını yeniden sıkıştırır

Klasik form denetimleri

MacroName := Workbook.Names.Add('RunReport', '=0', False);
MacroName.IsMacro := True;
Button := Sheet.AddButton('Run report', 1, 2, 2, 5);
Button.MacroName := 'RunReport';
CheckBox := Sheet.AddCheckBox('Approved', 2, 2, 3, 5);
CheckBox.State := xcsMixed;
CheckBox.LinkedCell := 'Controls!$F$2';
RadioButton := Sheet.AddRadioButton('Primary', 4, 2, 5, 5);
RadioButton.FirstInGroup := True;
ComboBox := Sheet.AddComboBox(5, 2, 6, 5);
ComboBox.SourceRange := 'Controls!$A$1:$A$8';
ListBox := Sheet.AddListBox(8, 2, 12, 5);
ListBox.SourceRange := 'Controls!$A$1:$A$8';

Türlü sarmalayıcılar; etiketleri, denetim türlerini, çıtaları, işaret durumlarını, düz ya da 3B görünümü, radyo grubu bağlantılarını, makro bağlarını, bağlı hücreleri, giriş aralıklarını, numaralandırmayı ve silmeyi klasik XLS açma-kaydetme döngüleri boyunca korur

Seçmeli biçim yamaları

Target.ApplyFormatPatch(Source, [xfpFont, xfpFill, xfpNumberFormat]);

Daha küçük bir kaynak aralık, daha geniş hedef üzerinde döşenir; seçilmemiş biçimlendirme ve hedefteki tüm değerler değişmeden kalır

Master-detail veri kümesi aktarımı

Bağlı detail veri kümelerini her master kaydın altına aktarmak için TDataToXLS.ReadDetailTables seçeneğini, her ilişki düzeyi için bir girinti sütunu eklemek üzere IndentDetailTables seçeneğini açın

WordArt

Shape := Sheet.AddWordArt('HotXLS', 'textArchUp', 2, 2, 6, 8);
Shape.TextColor := $FF00A060;
Shape.OutlineColor := $FF17365D;

Tam DrawingML çıtası, sonraki açma ve kaydetme döngülerinde ham çizim koruma yolu üzerinden ayakta kalır

PDF baskıyı, form denetimlerini, biçim yamalarını ve WordArt'ı bir arada kullanan kompakt, çalıştırılabilir bir örnek için Demo\Delphi\FeatureShowcase demosuna bakın